Algorithmic Trading Model for Cramer COVID-19 Index Using Python Take 4

David Lowe

June 11, 2020

SUMMARY: The purpose of this project is to construct and test an algorithmic trading model and document the end-to-end steps using a template.

INTRODUCTION: CNBC’s Jim Cramer, the host of Mad Money show, presented a list of stocks on April 27 that he believes will work well in this coronavirus-plagued market. The ‘Cramer COVID-19 Index’ contains 100 companies that touch 17 sectors where investors can expect a positive return in this volatile market environment. The project aims to analyze these 100 stocks and develop strategies for trading these stocks, either individually or in groups.

In iteration Take1, we constructed the necessary code segments for downloading and visualizing the index and the stocks. The script leveraged various data sources, both free and paid subscriptions, for pulling the required dataset together.

In iteration Take2, we built on the previous analysis by constructing a dual moving average crossover trading model (20-day and 50-day) and applying the model to the stocks in the index. For each stock, we also identified the entry and exit dates starting around January 1, 2019.

In iteration Take3, we built on the previous analysis by constructing a module to calculate profit and loss for the dual moving average crossover trading model and applying the model to the stocks in the index.

In this Take4 iteration, we will build on the previous analysis by constructing a module to calculate profit and loss for the long-only investing approach. The long-only investing approach assumes we buy and hold the stock from the first day of the trading model to now.

NOTE: This script calculates the index value by using the number of outstanding shares from each company. Such an approach may not match how CNBC calculates this index (https://www.cnbc.com/cramer-covid-19-stocks/). This script is for educational purposes only and does not constitute a recommendation for buying or selling any stock mentioned in this script.

ANALYSIS: Refer to the trading model and long-only return ranking for each stock in the index under Task 5.

CONCLUSION: Refer to the trading model and long-only return ranking for each stock in the index under Task 5.

Dataset ML Model: Time series analysis with numerical attributes

Dataset Used: IEX Cloud and Quandl

An algorithmic trading modeling project generally can be broken down into about five major tasks:

  1. Prepare Environment
  2. Acquire and Pre-Process Data
  3. Develop Strategy and Train Model
  4. Back-test Model
  5. Evaluate Performance

Task 1. Prepare Environment

In [1]:
import os
import sys
import smtplib
import numpy as np
import pandas as pd
import requests
import json
from email.message import EmailMessage
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
from time import sleep
from dotenv import load_dotenv
In [2]:
# Begin the timer for the script processing
startTimeScript = datetime.now()

# Set up the verbose flag to print detailed messages for debugging (setting True will activate!)
verbose = False

# Set up the sendNotification flag to send progress emails (setting True will send emails!)
notifyStatus = False

# Set up the parent directory location for loading the dotenv files
useColab = False
if useColab:
    # Mount Google Drive locally for storing files
    from google.colab import drive
    drive.mount('/content/gdrive')
    gdrivePrefix = '/content/gdrive/My Drive/Colab_Downloads/'
    env_path = '/content/gdrive/My Drive/Colab Notebooks/'
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Set up the dotenv file for retrieving environment variables
useDocker = True
if not useDocker:
    env_path = "/Users/david/PycharmProjects/"
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Configure the plotting style
plt.style.use('seaborn')

# Set Pandas options
pd.set_option("display.max_rows", 120)
pd.set_option("display.width", 140)
In [3]:
# Define the function for sending the status notification emails
def email_notify(msg_text):
    sender = os.environ.get('MAIL_SENDER')
    receiver = os.environ.get('MAIL_RECEIVER')
    gateway = os.environ.get('SMTP_GATEWAY')
    smtpuser = os.environ.get('SMTP_USERNAME')
    password = os.environ.get('SMTP_PASSWORD')
    if (sender is None) or (receiver is None) or (gateway is None) or (smtpuser is None) or (password is None):
        sys.exit("Incomplete email setup info. Script Processing Aborted!!!")
    msg = EmailMessage()
    msg.set_content(msg_text)
    msg['Subject'] = 'Notification from Algorithmic Trading Modeling Script'
    msg['From'] = sender
    msg['To'] = receiver
    server = smtplib.SMTP(gateway, 587)
    server.starttls()
    server.login(smtpuser, password)
    server.send_message(msg)
    server.quit()
In [4]:
if notifyStatus: email_notify("Task 1. Prepare Environment has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [5]:
# Check and see whether the API key is available
alphavantage_key = os.environ.get('ALPHAVANTAGE_API')
if alphavantage_key is None: sys.exit("API key for Alpha Vantage not available. Script Processing Aborted!!!")

# Check and see whether the API key is available
iexcloud_key = os.environ.get('IEXCLOUD_API')
if iexcloud_key is None: sys.exit("API key for IEX Cloud not available. Script Processing Aborted!!!")

# Check and see whether the API key is available
quandl_key = os.environ.get('QUANDL_API')
if quandl_key is None: sys.exit("API key for Quandl not available. Script Processing Aborted!!!")
In [6]:
# Specify the parameters for the trading strategy
fast_ma = 20
slow_ma = 50

model_start_date = datetime(2019, 1, 1)
print("Starting date for the model:", model_start_date)
stock_start_date = model_start_date - timedelta(days=int(slow_ma*1.5)) # Need more pricing data to calculate moving averages

# model_end_date = datetime(2020, 1, 1)
model_end_date = datetime.now()
print("Ending date for the model:", model_end_date)

stock_data_dates = pd.date_range(start=stock_start_date, end=model_end_date)
Starting date for the model: 2019-01-01 00:00:00
Ending date for the model: 2020-05-29 00:26:01.751550
In [7]:
if notifyStatus: email_notify("Task 1. Prepare Environment completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))

Task 2. Acquire and Pre-Process Data

In [8]:
if notifyStatus: email_notify("Task 2. Acquire and Pre-Process Data has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [9]:
dataset_path = 'https://www.dainesanalytics.com/datasets/cramer-covid19-index/Cramer_COVID-19_Index.csv'
stock_meta = pd.read_csv(dataset_path, sep=',')
stock_meta.set_index('Symbol', inplace=True)
stock_meta = stock_meta.sort_index(ascending = True)
stock_meta.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
Index: 100 entries, AAPL to ZTS
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 
 0   Name    100 non-null    object
dtypes: object(1)
memory usage: 1.6+ KB
In [10]:
# Take a peek at the dataframe after import
stock_meta.head()
Out[10]:
Name
Symbol
AAPL Apple
ABBV AbbVie
ABT Abbott Labs
ADBE Adobe
AKAM Akamai Technologies
In [11]:
stock_list = stock_meta.index.tolist()
if verbose: print('Stocks to process:', stock_list)
In [12]:
for ticker in stock_list:
    iexcloud_url = "https://cloud.iexapis.com/stable/stock/%s/stats/sharesOutstanding?token=%s" % (ticker, iexcloud_key)
    sleep(1)
    response = requests.get(iexcloud_url)
    share_data = json.loads(response.text)
    stock_meta.loc[ticker,'Share_Outstanding'] = share_data
    print('Company outstanding share number retrieved for', ticker, ':', share_data)
Company outstanding share number retrieved for AAPL : 4334340000
Company outstanding share number retrieved for ABBV : 1762340000
Company outstanding share number retrieved for ABT : 1768850000
Company outstanding share number retrieved for ADBE : 481801000
Company outstanding share number retrieved for AKAM : 162274000
Company outstanding share number retrieved for AMD : 1171190000
Company outstanding share number retrieved for AMT : 443306000
Company outstanding share number retrieved for AMZN : 498776000
Company outstanding share number retrieved for ATVI : 770486000
Company outstanding share number retrieved for BAX : 508836000
Company outstanding share number retrieved for BNTX : 228604644
Company outstanding share number retrieved for BSX : 1399350000
Company outstanding share number retrieved for BYND : 62236700
Company outstanding share number retrieved for CAG : 487076000
Company outstanding share number retrieved for CCI : 416751000
Company outstanding share number retrieved for CHGG : 123646000
Company outstanding share number retrieved for CHWY : 66479000
Company outstanding share number retrieved for CL : 856528000
Company outstanding share number retrieved for CLX : 125100000
Company outstanding share number retrieved for CMG : 27890700
Company outstanding share number retrieved for CNC : 579129000
Company outstanding share number retrieved for COR : 37903400
Company outstanding share number retrieved for COST : 441580000
Company outstanding share number retrieved for COUP : 66640900
Company outstanding share number retrieved for CPB : 301745000
Company outstanding share number retrieved for CRM : 899412000
Company outstanding share number retrieved for CRWD : 114945000
Company outstanding share number retrieved for CTXS : 123451000
Company outstanding share number retrieved for D : 839251000
Company outstanding share number retrieved for DDOG : 176048000
Company outstanding share number retrieved for DG : 251515000
Company outstanding share number retrieved for DHR : 707020000
Company outstanding share number retrieved for DOCU : 183127000
Company outstanding share number retrieved for DPZ : 39117900
Company outstanding share number retrieved for DXCM : 92300000
Company outstanding share number retrieved for EA : 288688000
Company outstanding share number retrieved for EBAY : 702679000
Company outstanding share number retrieved for EBS : 52427800
Company outstanding share number retrieved for EQIX : 88514500
Company outstanding share number retrieved for ETSY : 118678000
Company outstanding share number retrieved for EVBG : 34358100
Company outstanding share number retrieved for GILD : 1254000000
Company outstanding share number retrieved for GIS : 606139000
Company outstanding share number retrieved for GOLD : 1778040000
Company outstanding share number retrieved for GOOG : 336162000
Company outstanding share number retrieved for GSK : 2490337478
Company outstanding share number retrieved for HD : 1074120000
Company outstanding share number retrieved for HRL : 537776000
Company outstanding share number retrieved for JNJ : 2634590000
Company outstanding share number retrieved for K : 342670000
Company outstanding share number retrieved for KR : 786188000
Company outstanding share number retrieved for LLY : 957038000
Company outstanding share number retrieved for LOGI : 166897000
Company outstanding share number retrieved for LVGO : 97817000
Company outstanding share number retrieved for MASI : 54115400
Company outstanding share number retrieved for MDLZ : 1427460000
Company outstanding share number retrieved for MKC : 123641000
Company outstanding share number retrieved for MKTX : 37910200
Company outstanding share number retrieved for MRNA : 371224000
Company outstanding share number retrieved for MRVL : 663100000
Company outstanding share number retrieved for MSFT : 7583440000
Company outstanding share number retrieved for NET : 165000000
Company outstanding share number retrieved for NFLX : 439804000
Company outstanding share number retrieved for NVDA : 615135000
Company outstanding share number retrieved for OKTA : 116101000
Company outstanding share number retrieved for PANW : 96465900
Company outstanding share number retrieved for PEP : 1387500000
Company outstanding share number retrieved for PFE : 5554830000
Company outstanding share number retrieved for PG : 2475640000
Company outstanding share number retrieved for PLD : 738582000
Company outstanding share number retrieved for PRGO : 136313000
Company outstanding share number retrieved for PTON : 206067000
Company outstanding share number retrieved for PYPL : 1174160000
Company outstanding share number retrieved for REGN : 110673000
Company outstanding share number retrieved for RMD : 144668000
Company outstanding share number retrieved for RNG : 77005900
Company outstanding share number retrieved for SHOP : 107511000
Company outstanding share number retrieved for SJM : 114038000
Company outstanding share number retrieved for SNY : 2508821038
Company outstanding share number retrieved for SPGI : 240900000
Company outstanding share number retrieved for SPLK : 158796000
Company outstanding share number retrieved for SPOT : 182788290
Company outstanding share number retrieved for SQ : 362988000
Company outstanding share number retrieved for TDOC : 74453300
Company outstanding share number retrieved for TGT : 499920000
Company outstanding share number retrieved for TMO : 394951000
Company outstanding share number retrieved for TTD : 40888700
Company outstanding share number retrieved for TTWO : 113943000
Company outstanding share number retrieved for TW : 83945500
Company outstanding share number retrieved for TWLO : 128614000
Company outstanding share number retrieved for UNH : 948380000
Company outstanding share number retrieved for VEEV : 134844000
Company outstanding share number retrieved for VZ : 4138000000
Company outstanding share number retrieved for WING : 29583000
Company outstanding share number retrieved for WIX : 51526000
Company outstanding share number retrieved for WMT : 2833700000
Company outstanding share number retrieved for WORK : 425484000
Company outstanding share number retrieved for ZM : 167557000
Company outstanding share number retrieved for ZS : 129352000
Company outstanding share number retrieved for ZTS : 474941000
In [13]:
stock_meta.head()
Out[13]:
Name Share_Outstanding
Symbol
AAPL Apple 4.334340e+09
ABBV AbbVie 1.762340e+09
ABT Abbott Labs 1.768850e+09
ADBE Adobe 4.818010e+08
AKAM Akamai Technologies 1.622740e+08
In [14]:
stock_meta.tail()
Out[14]:
Name Share_Outstanding
Symbol
WMT Walmart 2.833700e+09
WORK Slack 4.254840e+08
ZM Zoom Video 1.675570e+08
ZS Zscaler 1.293520e+08
ZTS Zoetis 4.749410e+08
In [15]:
total_shares = stock_meta['Share_Outstanding'].sum()
print('Total number of outstanding shares used to calculate the index:', total_shares)
Total number of outstanding shares used to calculate the index: 72940926350.0
In [16]:
# Create the dataframe to hold the index and individual stock components
columns = ['JC_MAD']
index_df = pd.DataFrame(index=stock_data_dates, columns=columns)
index_df = index_df.fillna(0.0)
index_df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 590 entries, 2018-10-18 to 2020-05-29
Freq: D
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   JC_MAD  590 non-null    float64
dtypes: float64(1)
memory usage: 9.2 KB
In [17]:
index_df.head()
Out[17]:
JC_MAD
2018-10-18 0.0
2018-10-19 0.0
2018-10-20 0.0
2018-10-21 0.0
2018-10-22 0.0
In [18]:
# Create the dataframe to hold the stock opening prices
stock_open_df = pd.DataFrame(index=stock_data_dates)
stock_open_df.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 590 entries, 2018-10-18 to 2020-05-29
Freq: D
Empty DataFrame
In [19]:
# Create the dataframe to hold the stock closing prices
stock_close_df = pd.DataFrame(index=stock_data_dates)
stock_close_df.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 590 entries, 2018-10-18 to 2020-05-29
Freq: D
Empty DataFrame
In [20]:
start_date_string = stock_start_date.strftime('%Y-%m-%d')
end_date_string = model_end_date.strftime('%Y-%m-%d')

for ticker in stock_list:
    quandl_url = "https://www.quandl.com/api/v3/datatables/SHARADAR/SEP.json?date.gte=%s&date.lte=%s&ticker=%s&api_key=%s" % (start_date_string, end_date_string, ticker, quandl_key)
    response = requests.get(quandl_url)
    sleep(1)
    quandl_dict = json.loads(response.text)
    stock_data = pd.DataFrame(quandl_dict['datatable']['data'])
    print(len(stock_data), 'data points retrieved from the API call for:', ticker)
    stock_data.columns = ['ticker', 'date', 'open', 'high', 'low', 'close', 'volume', 'dividend', 'closeunadj', 'lastupdated']
    stock_data.index = pd.to_datetime(stock_data.date)
    stock_data = stock_data.sort_index(ascending = True)
    stock_open = stock_data.loc[:, ['open']]
    stock_open.rename(columns={'open': ticker}, inplace=True)
    stock_open_df = pd.concat([stock_open_df, stock_open], axis=1)
    stock_close = stock_data.loc[:, ['closeunadj']]
    stock_close.rename(columns={'closeunadj': ticker}, inplace=True)
    stock_close_df = pd.concat([stock_close_df, stock_close], axis=1)
    component_close = stock_data.loc[:, ['closeunadj']] * stock_meta.loc[ticker, 'Share_Outstanding'] / total_shares
    component_close.rename(columns={'closeunadj': ticker}, inplace=True)
    index_df = pd.concat([index_df, component_close], axis=1)
404 data points retrieved from the API call for: AAPL
404 data points retrieved from the API call for: ABBV
404 data points retrieved from the API call for: ABT
404 data points retrieved from the API call for: ADBE
404 data points retrieved from the API call for: AKAM
404 data points retrieved from the API call for: AMD
404 data points retrieved from the API call for: AMT
404 data points retrieved from the API call for: AMZN
404 data points retrieved from the API call for: ATVI
404 data points retrieved from the API call for: BAX
159 data points retrieved from the API call for: BNTX
404 data points retrieved from the API call for: BSX
271 data points retrieved from the API call for: BYND
404 data points retrieved from the API call for: CAG
404 data points retrieved from the API call for: CCI
404 data points retrieved from the API call for: CHGG
241 data points retrieved from the API call for: CHWY
404 data points retrieved from the API call for: CL
404 data points retrieved from the API call for: CLX
404 data points retrieved from the API call for: CMG
404 data points retrieved from the API call for: CNC
404 data points retrieved from the API call for: COR
404 data points retrieved from the API call for: COST
404 data points retrieved from the API call for: COUP
404 data points retrieved from the API call for: CPB
404 data points retrieved from the API call for: CRM
242 data points retrieved from the API call for: CRWD
404 data points retrieved from the API call for: CTXS
404 data points retrieved from the API call for: D
174 data points retrieved from the API call for: DDOG
404 data points retrieved from the API call for: DG
404 data points retrieved from the API call for: DHR
404 data points retrieved from the API call for: DOCU
404 data points retrieved from the API call for: DPZ
404 data points retrieved from the API call for: DXCM
404 data points retrieved from the API call for: EA
404 data points retrieved from the API call for: EBAY
404 data points retrieved from the API call for: EBS
404 data points retrieved from the API call for: EQIX
404 data points retrieved from the API call for: ETSY
404 data points retrieved from the API call for: EVBG
404 data points retrieved from the API call for: GILD
404 data points retrieved from the API call for: GIS
404 data points retrieved from the API call for: GOLD
404 data points retrieved from the API call for: GOOG
404 data points retrieved from the API call for: GSK
404 data points retrieved from the API call for: HD
404 data points retrieved from the API call for: HRL
404 data points retrieved from the API call for: JNJ
404 data points retrieved from the API call for: K
404 data points retrieved from the API call for: KR
404 data points retrieved from the API call for: LLY
404 data points retrieved from the API call for: LOGI
213 data points retrieved from the API call for: LVGO
404 data points retrieved from the API call for: MASI
404 data points retrieved from the API call for: MDLZ
404 data points retrieved from the API call for: MKC
404 data points retrieved from the API call for: MKTX
370 data points retrieved from the API call for: MRNA
404 data points retrieved from the API call for: MRVL
404 data points retrieved from the API call for: MSFT
178 data points retrieved from the API call for: NET
404 data points retrieved from the API call for: NFLX
404 data points retrieved from the API call for: NVDA
404 data points retrieved from the API call for: OKTA
404 data points retrieved from the API call for: PANW
404 data points retrieved from the API call for: PEP
404 data points retrieved from the API call for: PFE
404 data points retrieved from the API call for: PG
404 data points retrieved from the API call for: PLD
404 data points retrieved from the API call for: PRGO
169 data points retrieved from the API call for: PTON
404 data points retrieved from the API call for: PYPL
404 data points retrieved from the API call for: REGN
404 data points retrieved from the API call for: RMD
404 data points retrieved from the API call for: RNG
404 data points retrieved from the API call for: SHOP
404 data points retrieved from the API call for: SJM
404 data points retrieved from the API call for: SNY
404 data points retrieved from the API call for: SPGI
404 data points retrieved from the API call for: SPLK
404 data points retrieved from the API call for: SPOT
404 data points retrieved from the API call for: SQ
404 data points retrieved from the API call for: TDOC
404 data points retrieved from the API call for: TGT
404 data points retrieved from the API call for: TMO
404 data points retrieved from the API call for: TTD
404 data points retrieved from the API call for: TTWO
290 data points retrieved from the API call for: TW
404 data points retrieved from the API call for: TWLO
404 data points retrieved from the API call for: UNH
404 data points retrieved from the API call for: VEEV
404 data points retrieved from the API call for: VZ
404 data points retrieved from the API call for: WING
404 data points retrieved from the API call for: WIX
404 data points retrieved from the API call for: WMT
237 data points retrieved from the API call for: WORK
280 data points retrieved from the API call for: ZM
404 data points retrieved from the API call for: ZS
404 data points retrieved from the API call for: ZTS
In [21]:
stock_open_df.dropna(inplace=True)
stock_open_df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 159 entries, 2019-10-10 to 2020-05-28
Data columns (total 100 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   AAPL    159 non-null    float64
 1   ABBV    159 non-null    float64
 2   ABT     159 non-null    float64
 3   ADBE    159 non-null    float64
 4   AKAM    159 non-null    float64
 5   AMD     159 non-null    float64
 6   AMT     159 non-null    float64
 7   AMZN    159 non-null    float64
 8   ATVI    159 non-null    float64
 9   BAX     159 non-null    float64
 10  BNTX    159 non-null    float64
 11  BSX     159 non-null    float64
 12  BYND    159 non-null    float64
 13  CAG     159 non-null    float64
 14  CCI     159 non-null    float64
 15  CHGG    159 non-null    float64
 16  CHWY    159 non-null    float64
 17  CL      159 non-null    float64
 18  CLX     159 non-null    float64
 19  CMG     159 non-null    float64
 20  CNC     159 non-null    float64
 21  COR     159 non-null    float64
 22  COST    159 non-null    float64
 23  COUP    159 non-null    float64
 24  CPB     159 non-null    float64
 25  CRM     159 non-null    float64
 26  CRWD    159 non-null    float64
 27  CTXS    159 non-null    float64
 28  D       159 non-null    float64
 29  DDOG    159 non-null    float64
 30  DG      159 non-null    float64
 31  DHR     159 non-null    float64
 32  DOCU    159 non-null    float64
 33  DPZ     159 non-null    float64
 34  DXCM    159 non-null    float64
 35  EA      159 non-null    float64
 36  EBAY    159 non-null    float64
 37  EBS     159 non-null    float64
 38  EQIX    159 non-null    float64
 39  ETSY    159 non-null    float64
 40  EVBG    159 non-null    float64
 41  GILD    159 non-null    float64
 42  GIS     159 non-null    float64
 43  GOLD    159 non-null    float64
 44  GOOG    159 non-null    float64
 45  GSK     159 non-null    float64
 46  HD      159 non-null    float64
 47  HRL     159 non-null    float64
 48  JNJ     159 non-null    float64
 49  K       159 non-null    float64
 50  KR      159 non-null    float64
 51  LLY     159 non-null    float64
 52  LOGI    159 non-null    float64
 53  LVGO    159 non-null    float64
 54  MASI    159 non-null    float64
 55  MDLZ    159 non-null    float64
 56  MKC     159 non-null    float64
 57  MKTX    159 non-null    float64
 58  MRNA    159 non-null    float64
 59  MRVL    159 non-null    float64
 60  MSFT    159 non-null    float64
 61  NET     159 non-null    float64
 62  NFLX    159 non-null    float64
 63  NVDA    159 non-null    float64
 64  OKTA    159 non-null    float64
 65  PANW    159 non-null    float64
 66  PEP     159 non-null    float64
 67  PFE     159 non-null    float64
 68  PG      159 non-null    float64
 69  PLD     159 non-null    float64
 70  PRGO    159 non-null    float64
 71  PTON    159 non-null    float64
 72  PYPL    159 non-null    float64
 73  REGN    159 non-null    float64
 74  RMD     159 non-null    float64
 75  RNG     159 non-null    float64
 76  SHOP    159 non-null    float64
 77  SJM     159 non-null    float64
 78  SNY     159 non-null    float64
 79  SPGI    159 non-null    float64
 80  SPLK    159 non-null    float64
 81  SPOT    159 non-null    float64
 82  SQ      159 non-null    float64
 83  TDOC    159 non-null    float64
 84  TGT     159 non-null    float64
 85  TMO     159 non-null    float64
 86  TTD     159 non-null    float64
 87  TTWO    159 non-null    float64
 88  TW      159 non-null    float64
 89  TWLO    159 non-null    float64
 90  UNH     159 non-null    float64
 91  VEEV    159 non-null    float64
 92  VZ      159 non-null    float64
 93  WING    159 non-null    float64
 94  WIX     159 non-null    float64
 95  WMT     159 non-null    float64
 96  WORK    159 non-null    float64
 97  ZM      159 non-null    float64
 98  ZS      159 non-null    float64
 99  ZTS     159 non-null    float64
dtypes: float64(100)
memory usage: 125.5 KB
In [22]:
stock_close_df.dropna(inplace=True)
stock_close_df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 159 entries, 2019-10-10 to 2020-05-28
Data columns (total 100 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   AAPL    159 non-null    float64
 1   ABBV    159 non-null    float64
 2   ABT     159 non-null    float64
 3   ADBE    159 non-null    float64
 4   AKAM    159 non-null    float64
 5   AMD     159 non-null    float64
 6   AMT     159 non-null    float64
 7   AMZN    159 non-null    float64
 8   ATVI    159 non-null    float64
 9   BAX     159 non-null    float64
 10  BNTX    159 non-null    float64
 11  BSX     159 non-null    float64
 12  BYND    159 non-null    float64
 13  CAG     159 non-null    float64
 14  CCI     159 non-null    float64
 15  CHGG    159 non-null    float64
 16  CHWY    159 non-null    float64
 17  CL      159 non-null    float64
 18  CLX     159 non-null    float64
 19  CMG     159 non-null    float64
 20  CNC     159 non-null    float64
 21  COR     159 non-null    float64
 22  COST    159 non-null    float64
 23  COUP    159 non-null    float64
 24  CPB     159 non-null    float64
 25  CRM     159 non-null    float64
 26  CRWD    159 non-null    float64
 27  CTXS    159 non-null    float64
 28  D       159 non-null    float64
 29  DDOG    159 non-null    float64
 30  DG      159 non-null    float64
 31  DHR     159 non-null    float64
 32  DOCU    159 non-null    float64
 33  DPZ     159 non-null    float64
 34  DXCM    159 non-null    float64
 35  EA      159 non-null    float64
 36  EBAY    159 non-null    float64
 37  EBS     159 non-null    float64
 38  EQIX    159 non-null    float64
 39  ETSY    159 non-null    float64
 40  EVBG    159 non-null    float64
 41  GILD    159 non-null    float64
 42  GIS     159 non-null    float64
 43  GOLD    159 non-null    float64
 44  GOOG    159 non-null    float64
 45  GSK     159 non-null    float64
 46  HD      159 non-null    float64
 47  HRL     159 non-null    float64
 48  JNJ     159 non-null    float64
 49  K       159 non-null    float64
 50  KR      159 non-null    float64
 51  LLY     159 non-null    float64
 52  LOGI    159 non-null    float64
 53  LVGO    159 non-null    float64
 54  MASI    159 non-null    float64
 55  MDLZ    159 non-null    float64
 56  MKC     159 non-null    float64
 57  MKTX    159 non-null    float64
 58  MRNA    159 non-null    float64
 59  MRVL    159 non-null    float64
 60  MSFT    159 non-null    float64
 61  NET     159 non-null    float64
 62  NFLX    159 non-null    float64
 63  NVDA    159 non-null    float64
 64  OKTA    159 non-null    float64
 65  PANW    159 non-null    float64
 66  PEP     159 non-null    float64
 67  PFE     159 non-null    float64
 68  PG      159 non-null    float64
 69  PLD     159 non-null    float64
 70  PRGO    159 non-null    float64
 71  PTON    159 non-null    float64
 72  PYPL    159 non-null    float64
 73  REGN    159 non-null    float64
 74  RMD     159 non-null    float64
 75  RNG     159 non-null    float64
 76  SHOP    159 non-null    float64
 77  SJM     159 non-null    float64
 78  SNY     159 non-null    float64
 79  SPGI    159 non-null    float64
 80  SPLK    159 non-null    float64
 81  SPOT    159 non-null    float64
 82  SQ      159 non-null    float64
 83  TDOC    159 non-null    float64
 84  TGT     159 non-null    float64
 85  TMO     159 non-null    float64
 86  TTD     159 non-null    float64
 87  TTWO    159 non-null    float64
 88  TW      159 non-null    float64
 89  TWLO    159 non-null    float64
 90  UNH     159 non-null    float64
 91  VEEV    159 non-null    float64
 92  VZ      159 non-null    float64
 93  WING    159 non-null    float64
 94  WIX     159 non-null    float64
 95  WMT     159 non-null    float64
 96  WORK    159 non-null    float64
 97  ZM      159 non-null    float64
 98  ZS      159 non-null    float64
 99  ZTS     159 non-null    float64
dtypes: float64(100)
memory usage: 125.5 KB
In [23]:
index_df.dropna(inplace=True)
index_df['JC_MAD'] = index_df[stock_list].sum(axis=1)
index_df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 159 entries, 2019-10-10 to 2020-05-28
Data columns (total 101 columns):
 #   Column  Dtype  
---  ------  -----  
 0   JC_MAD  float64
 1   AAPL    float64
 2   ABBV    float64
 3   ABT     float64
 4   ADBE    float64
 5   AKAM    float64
 6   AMD     float64
 7   AMT     float64
 8   AMZN    float64
 9   ATVI    float64
 10  BAX     float64
 11  BNTX    float64
 12  BSX     float64
 13  BYND    float64
 14  CAG     float64
 15  CCI     float64
 16  CHGG    float64
 17  CHWY    float64
 18  CL      float64
 19  CLX     float64
 20  CMG     float64
 21  CNC     float64
 22  COR     float64
 23  COST    float64
 24  COUP    float64
 25  CPB     float64
 26  CRM     float64
 27  CRWD    float64
 28  CTXS    float64
 29  D       float64
 30  DDOG    float64
 31  DG      float64
 32  DHR     float64
 33  DOCU    float64
 34  DPZ     float64
 35  DXCM    float64
 36  EA      float64
 37  EBAY    float64
 38  EBS     float64
 39  EQIX    float64
 40  ETSY    float64
 41  EVBG    float64
 42  GILD    float64
 43  GIS     float64
 44  GOLD    float64
 45  GOOG    float64
 46  GSK     float64
 47  HD      float64
 48  HRL     float64
 49  JNJ     float64
 50  K       float64
 51  KR      float64
 52  LLY     float64
 53  LOGI    float64
 54  LVGO    float64
 55  MASI    float64
 56  MDLZ    float64
 57  MKC     float64
 58  MKTX    float64
 59  MRNA    float64
 60  MRVL    float64
 61  MSFT    float64
 62  NET     float64
 63  NFLX    float64
 64  NVDA    float64
 65  OKTA    float64
 66  PANW    float64
 67  PEP     float64
 68  PFE     float64
 69  PG      float64
 70  PLD     float64
 71  PRGO    float64
 72  PTON    float64
 73  PYPL    float64
 74  REGN    float64
 75  RMD     float64
 76  RNG     float64
 77  SHOP    float64
 78  SJM     float64
 79  SNY     float64
 80  SPGI    float64
 81  SPLK    float64
 82  SPOT    float64
 83  SQ      float64
 84  TDOC    float64
 85  TGT     float64
 86  TMO     float64
 87  TTD     float64
 88  TTWO    float64
 89  TW      float64
 90  TWLO    float64
 91  UNH     float64
 92  VEEV    float64
 93  VZ      float64
 94  WING    float64
 95  WIX     float64
 96  WMT     float64
 97  WORK    float64
 98  ZM      float64
 99  ZS      float64
 100 ZTS     float64
dtypes: float64(101)
memory usage: 126.7 KB
In [24]:
index_df.head()
Out[24]:
JC_MAD AAPL ABBV ABT ADBE AKAM AMD AMT AMZN ATVI ... UNH VEEV VZ WING WIX WMT WORK ZM ZS ZTS
2019-10-10 119.106196 13.672548 1.798801 1.943431 1.816342 0.198802 0.455689 1.375240 11.763278 0.567136 ... 2.908944 0.277837 3.394206 0.035772 0.088124 4.646758 0.138948 0.163121 0.083881 0.829606
2019-10-11 119.981170 14.036214 1.778989 1.931063 1.838205 0.199225 0.477687 1.364118 11.843010 0.579072 ... 2.887360 0.281072 3.399879 0.035954 0.088915 4.671233 0.151607 0.163902 0.085335 0.836508
2019-10-14 119.828222 14.016010 1.782130 1.935671 1.834837 0.199870 0.490211 1.371350 11.873850 0.581079 ... 2.868117 0.283272 3.381158 0.035893 0.088774 4.629665 0.143615 0.162639 0.084236 0.824267
2019-10-15 121.032441 13.983328 1.800009 1.988052 1.845471 0.203185 0.493262 1.362659 12.085489 0.586889 ... 3.102154 0.289262 3.435052 0.035861 0.088223 4.643650 0.144315 0.163351 0.082258 0.838071
2019-10-16 120.602654 13.926876 1.806049 1.983201 1.801281 0.202295 0.494707 1.349046 12.154211 0.587206 ... 3.081351 0.277079 3.420302 0.036104 0.086966 4.639377 0.137898 0.155495 0.080955 0.832992

5 rows × 101 columns

In [25]:
index_df.tail()
Out[25]:
JC_MAD AAPL ABBV ABT ADBE AKAM AMD AMT AMZN ATVI ... UNH VEEV VZ WING WIX WMT WORK ZM ZS ZTS
2020-05-21 148.164646 18.828053 2.247474 2.191998 2.524370 0.224698 0.877498 1.386666 16.731008 0.765512 ... 3.730412 0.365058 3.061763 0.049172 0.146092 4.855767 0.184565 0.395180 0.134121 0.848619
2020-05-22 148.922376 18.949275 2.225246 2.218188 2.544781 0.223408 0.885848 1.473393 16.663584 0.771955 ... 3.769808 0.375207 3.069138 0.049164 0.152026 4.830127 0.184973 0.392952 0.136444 0.847187
2020-05-26 147.509756 18.820922 2.191662 2.169930 2.487776 0.222651 0.854055 1.482510 16.560876 0.739421 ... 3.834168 0.360713 3.080485 0.048259 0.148176 4.811868 0.189056 0.376734 0.135699 0.849400
2020-05-27 147.957303 18.902926 2.174024 2.200970 2.478133 0.222406 0.846830 1.531617 16.482443 0.741005 ... 3.949626 0.354927 3.128139 0.048612 0.145492 4.758256 0.187306 0.372071 0.132170 0.883194
2020-05-28 148.844869 18.911245 2.175232 2.233466 2.508913 0.228947 0.830773 1.568751 16.418918 0.741744 ... 3.952227 0.377499 3.161042 0.048292 0.146509 4.805263 0.189815 0.375701 0.134422 0.899277

5 rows × 101 columns

In [26]:
title_string = 'Historical Pricing for the Cramer COVID-19 Index'
index_df['JC_MAD'].plot(figsize=(16,9), title=title_string)
plt.show()
In [27]:
if notifyStatus: email_notify("Task 2. Acquire and Pre-Process Data completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))

Task 3. Develop Strategy and Train Model

In [28]:
if notifyStatus: email_notify("Task 3. Develop Strategy and Train Model has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [29]:
# Specify the parameters for the trading strategy
fast_ma = 10
slow_ma = 25
In [30]:
def ma_crossover(data):
    wait_for_entry = True
    for x in range(len(data)):
        if data['ma_change'].iloc[x] > 0:
            data['signal'].iloc[x] = 1  # Signal = 1 means we should take a long position
        else:
            data['signal'].iloc[x] = 0  # Signal = 0 means we should not have a position
        if x != 0:
            data['signal_chg'].iloc[x] = data['signal'].iloc[x] - data['signal'].iloc[x-1]
            if wait_for_entry and (data['signal_chg'].iloc[x-1] == 1):
                data['entry_exit'].iloc[x] = data['signal_chg'].iloc[x-1]
                wait_for_entry = False
            elif (not wait_for_entry) and (data['signal_chg'].iloc[x-1] != 0):
                data['entry_exit'].iloc[x] = data['signal_chg'].iloc[x-1]
In [31]:
model_collection = {}

for ticker in stock_list:
    print('Processing trading model for ticker symbol:', ticker)
    model_collection[ticker] = pd.DataFrame(stock_close_df[ticker])
    model_collection[ticker].rename(columns={ticker: 'close'}, inplace=True)
    model_collection[ticker]['open'] = stock_open_df[ticker]
    model_collection[ticker]['fast_ma'] = model_collection[ticker]['close'].rolling(fast_ma).mean()
    model_collection[ticker]['slow_ma'] = model_collection[ticker]['close'].rolling(slow_ma).mean()
    model_collection[ticker]['ma_change'] = model_collection[ticker]['fast_ma'] - model_collection[ticker]['slow_ma']
    model_collection[ticker]['signal'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker]['signal_chg'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker]['entry_exit'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker] = model_collection[ticker][model_start_date:model_end_date]
    if verbose:
        print(model_collection[ticker].head())
        print('...')
        print(model_collection[ticker].tail())
        print()
    ma_crossover(model_collection[ticker])
Processing trading model for ticker symbol: AAPL
Processing trading model for ticker symbol: ABBV
Processing trading model for ticker symbol: ABT
Processing trading model for ticker symbol: ADBE
Processing trading model for ticker symbol: AKAM
Processing trading model for ticker symbol: AMD
Processing trading model for ticker symbol: AMT
Processing trading model for ticker symbol: AMZN
Processing trading model for ticker symbol: ATVI
Processing trading model for ticker symbol: BAX
Processing trading model for ticker symbol: BNTX
Processing trading model for ticker symbol: BSX
Processing trading model for ticker symbol: BYND
Processing trading model for ticker symbol: CAG
Processing trading model for ticker symbol: CCI
Processing trading model for ticker symbol: CHGG
Processing trading model for ticker symbol: CHWY
Processing trading model for ticker symbol: CL
Processing trading model for ticker symbol: CLX
Processing trading model for ticker symbol: CMG
Processing trading model for ticker symbol: CNC
Processing trading model for ticker symbol: COR
Processing trading model for ticker symbol: COST
Processing trading model for ticker symbol: COUP
Processing trading model for ticker symbol: CPB
Processing trading model for ticker symbol: CRM
Processing trading model for ticker symbol: CRWD
Processing trading model for ticker symbol: CTXS
Processing trading model for ticker symbol: D
Processing trading model for ticker symbol: DDOG
Processing trading model for ticker symbol: DG
Processing trading model for ticker symbol: DHR
Processing trading model for ticker symbol: DOCU
Processing trading model for ticker symbol: DPZ
Processing trading model for ticker symbol: DXCM
Processing trading model for ticker symbol: EA
Processing trading model for ticker symbol: EBAY
Processing trading model for ticker symbol: EBS
Processing trading model for ticker symbol: EQIX
Processing trading model for ticker symbol: ETSY
Processing trading model for ticker symbol: EVBG
Processing trading model for ticker symbol: GILD
Processing trading model for ticker symbol: GIS
Processing trading model for ticker symbol: GOLD
Processing trading model for ticker symbol: GOOG
Processing trading model for ticker symbol: GSK
Processing trading model for ticker symbol: HD
Processing trading model for ticker symbol: HRL
Processing trading model for ticker symbol: JNJ
Processing trading model for ticker symbol: K
Processing trading model for ticker symbol: KR
Processing trading model for ticker symbol: LLY
Processing trading model for ticker symbol: LOGI
Processing trading model for ticker symbol: LVGO
Processing trading model for ticker symbol: MASI
Processing trading model for ticker symbol: MDLZ
Processing trading model for ticker symbol: MKC
Processing trading model for ticker symbol: MKTX
Processing trading model for ticker symbol: MRNA
Processing trading model for ticker symbol: MRVL
Processing trading model for ticker symbol: MSFT
Processing trading model for ticker symbol: NET
Processing trading model for ticker symbol: NFLX
Processing trading model for ticker symbol: NVDA
Processing trading model for ticker symbol: OKTA
Processing trading model for ticker symbol: PANW
Processing trading model for ticker symbol: PEP
Processing trading model for ticker symbol: PFE
Processing trading model for ticker symbol: PG
Processing trading model for ticker symbol: PLD
Processing trading model for ticker symbol: PRGO
Processing trading model for ticker symbol: PTON
Processing trading model for ticker symbol: PYPL
Processing trading model for ticker symbol: REGN
Processing trading model for ticker symbol: RMD
Processing trading model for ticker symbol: RNG
Processing trading model for ticker symbol: SHOP
Processing trading model for ticker symbol: SJM
Processing trading model for ticker symbol: SNY
Processing trading model for ticker symbol: SPGI
Processing trading model for ticker symbol: SPLK
Processing trading model for ticker symbol: SPOT
Processing trading model for ticker symbol: SQ
Processing trading model for ticker symbol: TDOC
Processing trading model for ticker symbol: TGT
Processing trading model for ticker symbol: TMO
Processing trading model for ticker symbol: TTD
Processing trading model for ticker symbol: TTWO
Processing trading model for ticker symbol: TW
Processing trading model for ticker symbol: TWLO
Processing trading model for ticker symbol: UNH
Processing trading model for ticker symbol: VEEV
Processing trading model for ticker symbol: VZ
Processing trading model for ticker symbol: WING
Processing trading model for ticker symbol: WIX
Processing trading model for ticker symbol: WMT
Processing trading model for ticker symbol: WORK
Processing trading model for ticker symbol: ZM
Processing trading model for ticker symbol: ZS
Processing trading model for ticker symbol: ZTS
In [32]:
for ticker in stock_list:
    print('List the signal change and entry/exit points for', ticker)
    print(model_collection[ticker][(model_collection[ticker].signal_chg != 0) | (model_collection[ticker].entry_exit != 0)])
    print()
List the signal change and entry/exit points for AAPL
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  264.47  261.13  258.465  247.1044    11.3606     1.0         1.0         0.0
2019-11-14  262.64  263.75  259.853  248.4064    11.4466     1.0         0.0         1.0
2020-02-25  288.08  300.95  315.886  317.2312    -1.3452     0.0        -1.0         0.0
2020-02-26  292.65  286.53  313.190  316.2744    -3.0844     0.0         0.0        -1.0
2020-04-13  273.25  268.31  256.556  254.2964     2.2596     1.0         1.0         0.0
2020-04-14  287.05  280.00  259.780  255.1316     4.6484     1.0         0.0         1.0

List the signal change and entry/exit points for ABBV
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  86.66  85.74   83.419  79.1836     4.2354     1.0         1.0         0.0
2019-11-14  87.63  86.48   84.227  79.7108     4.5162     1.0         0.0         1.0
2019-12-13  87.84  88.78   87.015  87.1776    -0.1626     0.0        -1.0         0.0
2019-12-16  89.43  88.38   87.255  87.3464    -0.0914     0.0         0.0        -1.0
2019-12-17  90.08  90.00   87.668  87.5232     0.1448     1.0         1.0         0.0
2019-12-18  89.33  90.05   87.881  87.6388     0.2422     1.0         0.0         1.0
2020-01-17  88.00  89.13   89.032  89.1292    -0.0972     0.0        -1.0         0.0
2020-01-21  87.99  87.68   88.891  89.0996    -0.2086     0.0         0.0        -1.0
2020-02-12  97.79  95.98   88.410  87.6452     0.7648     1.0         1.0         0.0
2020-02-13  95.35  96.85   89.767  87.8784     1.8886     1.0         0.0         1.0
2020-03-05  90.61  90.06   89.544  90.0368    -0.4928     0.0        -1.0         0.0
2020-03-06  88.82  88.73   88.930  90.3184    -1.3884     0.0         0.0        -1.0
2020-04-13  80.30  80.66   76.308  75.5724     0.7356     1.0         1.0         0.0
2020-04-14  82.13  80.62   76.997  75.4468     1.5502     1.0         0.0         1.0

List the signal change and entry/exit points for ABT
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  84.22  83.96   83.340  82.3404     0.9996     1.0         1.0         0.0
2019-11-14  84.12  84.09   83.391  82.4996     0.8914     1.0         0.0         1.0
2020-01-13  85.12  85.50   86.183  86.2672    -0.0842     0.0        -1.0         0.0
2020-01-14  85.74  84.13   86.077  86.2776    -0.2006     0.0         0.0        -1.0
2020-01-21  89.73  88.86   86.912  86.8808     0.0312     1.0         1.0         0.0
2020-01-22  91.86  90.78   87.512  87.1012     0.4108     1.0         0.0         1.0
2020-02-13  88.68  88.50   88.427  88.4696    -0.0426     0.0        -1.0         0.0
2020-02-14  89.66  88.87   88.679  88.5984     0.0806     1.0         1.0        -1.0
2020-02-18  88.88  89.42   88.861  88.7392     0.1218     1.0         0.0         1.0
2020-02-20  88.46  89.10   88.864  89.0176    -0.1536     0.0        -1.0         0.0
2020-02-21  87.45  88.04   88.662  89.0204    -0.3584     0.0         0.0        -1.0
2020-04-07  81.93  83.45   77.949  76.9456     1.0034     1.0         1.0         0.0
2020-04-08  84.95  82.50   79.369  77.0600     2.3090     1.0         0.0         1.0
2020-05-14  91.78  90.50   92.529  92.6232    -0.0942     0.0        -1.0         0.0
2020-05-15  89.89  89.96   92.533  92.7772    -0.2442     0.0         0.0        -1.0

List the signal change and entry/exit points for ADBE
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  293.54  291.86  286.870  277.5096     9.3604     1.0         1.0         0.0
2019-11-14  294.53  293.54  288.530  278.2916    10.2384     1.0         0.0         1.0
2020-03-02  360.28  349.81  361.351  362.6600    -1.3090     0.0        -1.0         0.0
2020-03-03  348.34  361.76  358.300  362.7176    -4.4176     0.0         0.0        -1.0
2020-04-09  318.70  318.65  310.518  310.2800     0.2380     1.0         1.0         0.0
2020-04-13  320.65  315.94  312.000  309.6352     2.3648     1.0         0.0         1.0

List the signal change and entry/exit points for AKAM
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-26   88.69   87.74   87.471   87.4124     0.0586     1.0         1.0         0.0
2019-11-27   87.29   88.83   87.640   87.2952     0.3448     1.0         0.0         1.0
2019-12-06   85.25   84.87   86.636   86.6824    -0.0464     0.0        -1.0         0.0
2019-12-09   84.11   84.95   86.250   86.5468    -0.2968     0.0         0.0        -1.0
2019-12-31   86.38   85.73   85.730   85.6508     0.0792     1.0         1.0         0.0
2020-01-02   87.64   86.84   86.065   85.6468     0.4182     1.0         0.0         1.0
2020-03-02   90.91   87.31   95.562   95.7700    -0.2080     0.0        -1.0         0.0
2020-03-03   90.28   90.53   94.494   95.6120    -1.1180     0.0         0.0        -1.0
2020-03-30   94.19   92.09   90.080   89.0952     0.9848     1.0         1.0         0.0
2020-03-31   91.49   92.89   90.386   89.0056     1.3804     1.0         0.0         1.0
2020-05-07  100.60  101.28   99.578   99.7384    -0.1604     0.0        -1.0         0.0
2020-05-08  101.15  101.52   99.415  100.0596    -0.6446     0.0         0.0        -1.0
2020-05-28  102.91   99.91   99.568   99.5156     0.0524     1.0         1.0         0.0

List the signal change and entry/exit points for AMD
            close    open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  37.52  36.650   36.030  33.2712     2.7588     1.0         1.0         0.0
2019-11-14  38.35  37.510   36.472  33.6700     2.8020     1.0         0.0         1.0
2020-02-06  49.32  48.800   49.006  49.1902    -0.1842     0.0        -1.0         0.0
2020-02-07  49.73  48.910   48.944  49.2154    -0.2714     0.0         0.0        -1.0
2020-02-12  53.89  54.530   50.209  49.8038     0.4052     1.0         1.0         0.0
2020-02-13  54.53  53.430   50.784  50.0718     0.7122     1.0         0.0         1.0
2020-03-03  46.75  49.030   49.733  50.5676    -0.8346     0.0        -1.0         0.0
2020-03-04  50.11  48.250   48.854  50.5508    -1.6968     0.0         0.0        -1.0
2020-04-02  44.49  43.400   44.767  44.4384     0.3286     1.0         1.0         0.0
2020-04-03  42.59  44.300   45.065  44.3228     0.7422     1.0         0.0         1.0
2020-05-11  55.74  52.900   52.923  53.2108    -0.2878     0.0        -1.0         0.0
2020-05-12  53.76  56.186   52.748  53.4604    -0.7124     0.0         0.0        -1.0
2020-05-21  54.65  56.680   54.468  54.2384     0.2296     1.0         1.0         0.0
2020-05-22  55.17  54.770   54.666  54.1812     0.4848     1.0         0.0         1.0

List the signal change and entry/exit points for AMT
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-26  214.79  209.59  213.144  213.0428     0.1012     1.0         1.0         0.0
2019-11-27  214.91  214.80  213.603  212.5984     1.0046     1.0         0.0         1.0
2019-12-13  212.52  209.11  211.629  211.8656    -0.2366     0.0        -1.0         0.0
2019-12-16  215.60  213.00  212.232  212.2548    -0.0228     0.0         0.0        -1.0
2019-12-19  224.20  217.52  213.830  213.4412     0.3888     1.0         1.0         0.0
2019-12-20  227.74  226.80  215.384  214.0788     1.3052     1.0         0.0         1.0
2020-03-03  242.65  240.75  241.970  242.4776    -0.5076     0.0        -1.0         0.0
2020-03-04  251.66  245.58  242.326  243.0568    -0.7308     0.0         0.0        -1.0
2020-04-08  249.25  229.64  225.173  221.2348     3.9382     1.0         1.0         0.0
2020-04-09  259.60  248.50  228.913  221.7412     7.1718     1.0         0.0         1.0
2020-05-06  237.26  240.86  241.012  241.3716    -0.3596     0.0        -1.0         0.0
2020-05-07  235.25  239.18  239.677  242.5028    -2.8258     0.0         0.0        -1.0

List the signal change and entry/exit points for AMZN
              close     open   fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  1753.11  1773.39  1784.708  1772.0376    12.6704     1.0         1.0         0.0
2019-11-14  1754.60  1751.43  1782.502  1773.4112     9.0908     1.0         0.0         1.0
2019-11-18  1752.53  1738.30  1772.094  1774.3580    -2.2640     0.0        -1.0         0.0
2019-11-19  1752.79  1756.99  1767.202  1773.7744    -6.5724     0.0         0.0        -1.0
2019-12-06  1751.60  1751.20  1774.014  1771.6084     2.4056     1.0         1.0         0.0
2019-12-09  1749.51  1750.66  1774.393  1769.9312     4.4618     1.0         0.0         1.0
2019-12-12  1760.33  1750.00  1760.290  1763.7760    -3.4860     0.0        -1.0         0.0
2019-12-13  1760.94  1765.00  1756.304  1762.6856    -6.3816     0.0         0.0        -1.0
2019-12-19  1792.28  1780.50  1764.649  1764.5872     0.0618     1.0         1.0         0.0
2019-12-20  1786.50  1799.62  1768.139  1765.8632     2.2758     1.0         0.0         1.0
2020-01-29  1858.00  1864.00  1866.995  1868.2040    -1.2090     0.0        -1.0         0.0
2020-01-30  1870.68  1858.00  1867.861  1871.3112    -3.4502     0.0         0.0        -1.0
2020-01-31  2008.72  2051.47  1880.939  1880.0916     0.8474     1.0         1.0         0.0
2020-02-03  2004.20  2010.60  1894.887  1885.5088     9.3782     1.0         0.0         1.0
2020-03-03  1908.99  1975.37  2001.190  2028.4368   -27.2468     0.0        -1.0         0.0
2020-03-04  1975.83  1946.57  1981.751  2033.3400   -51.5890     0.0         0.0        -1.0
2020-03-30  1963.95  1922.83  1891.317  1878.4596    12.8574     1.0         1.0         0.0
2020-03-31  1949.72  1964.35  1905.505  1877.5388    27.9662     1.0         0.0         1.0

List the signal change and entry/exit points for ATVI
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-05  54.99  54.09  54.1630  54.1190     0.0440     1.0         1.0         0.0
2019-12-06  55.21  55.12  54.3150  54.0862     0.2288     1.0         0.0         1.0
2020-02-04  59.21  58.86  59.5390  59.6510    -0.1120     0.0        -1.0         0.0
2020-02-05  58.85  60.14  59.3920  59.6498    -0.2578     0.0         0.0        -1.0
2020-02-10  61.63  61.42  59.9490  59.9170     0.0320     1.0         1.0         0.0
2020-02-11  61.19  61.93  60.0650  59.9750     0.0900     1.0         0.0         1.0
2020-03-03  58.75  60.56  60.8735  60.8826    -0.0091     0.0        -1.0         0.0
2020-03-04  62.55  60.00  60.6915  60.9834    -0.2919     0.0         0.0        -1.0
2020-04-06  61.60  61.13  57.9790  57.6292     0.3498     1.0         1.0         0.0
2020-04-07  59.87  62.53  58.5230  57.6740     0.8490     1.0         0.0         1.0

List the signal change and entry/exit points for BAX
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-21  82.25  81.85   80.757  80.5696     0.1874     1.0         1.0         0.0
2019-11-22  82.02  82.03   81.108  80.3308     0.7772     1.0         0.0         1.0
2020-02-27  84.27  85.25   90.464  90.7576    -0.2936     0.0        -1.0         0.0
2020-02-28  83.47  81.81   89.554  90.4524    -0.8984     0.0         0.0        -1.0
2020-04-07  82.51  86.74   80.665  80.1144     0.5506     1.0         1.0         0.0
2020-04-08  84.48  83.10   81.756  79.8512     1.9048     1.0         0.0         1.0
2020-05-11  88.93  87.76   88.849  88.9444    -0.0954     0.0        -1.0         0.0
2020-05-12  85.89  89.41   88.338  88.9828    -0.6448     0.0         0.0        -1.0

List the signal change and entry/exit points for BNTX
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  18.55  17.80   18.139  16.6572     1.4818     1.0         1.0         0.0
2019-11-14  19.00  18.86   18.357  16.8476     1.5094     1.0         0.0         1.0
2020-01-24  34.99  35.32   35.913  36.6420    -0.7290     0.0        -1.0         0.0
2020-01-27  33.20  33.24   35.265  36.5700    -1.3050     0.0         0.0        -1.0
2020-02-27  33.88  31.45   32.158  32.0096     0.1484     1.0         1.0         0.0
2020-02-28  35.10  33.40   32.604  31.9456     0.6584     1.0         0.0         1.0
2020-04-14  41.63  43.82   49.301  49.8868    -0.5858     0.0        -1.0         0.0
2020-04-15  38.58  40.90   47.319  50.0716    -2.7526     0.0         0.0        -1.0
2020-05-05  50.00  48.41   48.410  47.2368     1.1732     1.0         1.0         0.0
2020-05-06  47.78  50.14   47.838  46.8120     1.0260     1.0         0.0         1.0

List the signal change and entry/exit points for BSX
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  41.42  41.28   40.954  40.0256     0.9284     1.0         1.0         0.0
2019-11-14  41.57  41.45   40.941  40.1692     0.7718     1.0         0.0         1.0
2020-01-15  42.57  42.81   44.878  44.8992    -0.0212     0.0        -1.0         0.0
2020-01-16  43.20  42.71   44.665  44.8668    -0.2018     0.0         0.0        -1.0
2020-04-08  35.13  33.99   32.041  31.3996     0.6414     1.0         1.0         0.0
2020-04-09  36.83  35.25   32.582  31.3744     1.2076     1.0         0.0         1.0
2020-05-19  35.43  36.39   36.378  36.3948    -0.0168     0.0        -1.0         0.0
2020-05-20  37.18  35.92   36.507  36.4904     0.0166     1.0         1.0        -1.0
2020-05-21  34.79  35.52   36.286  36.4640    -0.1780     0.0        -1.0         1.0
2020-05-22  35.91  35.57   36.059  36.3688    -0.3098     0.0         0.0        -1.0

List the signal change and entry/exit points for BYND
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-07   83.89   75.00   76.679   76.0908     0.5882     1.0         1.0         0.0
2020-01-08   81.48   86.00   77.053   76.1792     0.8738     1.0         0.0         1.0
2020-02-13  112.01  114.79  112.896  113.6008    -0.7048     0.0        -1.0         0.0
2020-02-14  116.22  113.00  113.476  114.6396    -1.1636     0.0         0.0        -1.0
2020-02-19  126.10  124.07  116.646  116.1484     0.4976     1.0         1.0         0.0
2020-02-20  120.58  126.08  117.687  116.2896     1.3974     1.0         0.0         1.0
2020-02-28   89.65   88.00  113.456  114.4020    -0.9460     0.0        -1.0         0.0
2020-03-02   96.10   95.00  111.444  113.4664    -2.0224     0.0         0.0        -1.0
2020-04-14   78.05   79.99   67.848   67.6664     0.1816     1.0         1.0         0.0
2020-04-15   74.70   76.71   68.658   67.0152     1.6428     1.0         0.0         1.0

List the signal change and entry/exit points for CAG
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  28.31  27.61   27.641  27.5408     0.1002     1.0         1.0         0.0
2019-11-14  28.44  28.26   27.780  27.5444     0.2356     1.0         0.0         1.0
2019-12-18  29.05  29.32   28.848  28.8624    -0.0144     0.0        -1.0         0.0
2019-12-19  33.66  31.16   29.336  29.0764     0.2596     1.0         1.0        -1.0
2019-12-20  35.07  33.67   29.953  29.3416     0.6114     1.0         0.0         1.0
2020-01-21  32.76  32.81   32.273  32.4636    -0.1906     0.0        -1.0         0.0
2020-01-22  32.29  32.82   32.270  32.6200    -0.3500     0.0         0.0        -1.0
2020-02-05  32.67  32.14   32.772  32.6988     0.0732     1.0         1.0         0.0
2020-02-06  32.09  32.40   32.712  32.6128     0.0992     1.0         0.0         1.0
2020-02-13  32.58  32.54   32.474  32.5136    -0.0396     0.0        -1.0         0.0
2020-02-14  32.69  32.63   32.451  32.5328    -0.0818     0.0         0.0        -1.0
2020-04-01  29.76  28.34   27.383  27.3480     0.0350     1.0         1.0         0.0
2020-04-02  29.93  29.19   27.745  27.4904     0.2546     1.0         0.0         1.0
2020-05-14  33.83  34.11   33.559  33.6120    -0.0530     0.0        -1.0         0.0
2020-05-15  34.17  34.11   33.648  33.6804    -0.0324     0.0         0.0        -1.0

List the signal change and entry/exit points for CCI
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-09  135.88  135.18  133.921  133.5364     0.3846     1.0         1.0         0.0
2019-12-10  134.00  136.38  134.182  133.5164     0.6656     1.0         0.0         1.0
2020-03-09  150.28  152.98  156.867  158.3812    -1.5142     0.0        -1.0         0.0
2020-03-10  159.35  153.61  156.500  158.7876    -2.2876     0.0         0.0        -1.0
2020-04-08  157.36  148.00  145.405  143.4660     1.9390     1.0         1.0         0.0
2020-04-09  164.14  158.26  147.572  143.5420     4.0300     1.0         0.0         1.0
2020-05-08  157.70  157.32  158.013  158.5640    -0.5510     0.0        -1.0         0.0
2020-05-11  159.79  155.83  157.612  159.1308    -1.5188     0.0         0.0        -1.0

List the signal change and entry/exit points for CHGG
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  36.05  35.29   33.280  32.6796     0.6004     1.0         1.0         0.0
2019-11-14  36.52  35.91   33.866  32.8808     0.9852     1.0         0.0         1.0
2020-02-13  39.90  39.74   41.891  41.9684    -0.0774     0.0        -1.0         0.0
2020-02-14  40.08  39.96   41.776  41.9520    -0.1760     0.0         0.0        -1.0
2020-04-07  35.13  35.67   35.163  34.9956     0.1674     1.0         1.0         0.0
2020-04-08  36.84  35.75   35.444  34.8776     0.5664     1.0         0.0         1.0

List the signal change and entry/exit points for CHWY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  22.89  24.53   23.623  23.5984     0.0246     1.0         1.0         0.0
2019-12-05  24.33  23.89   23.736  23.5560     0.1800     1.0         0.0         1.0
2020-01-29  28.25  29.23   29.129  29.2216    -0.0926     0.0        -1.0         0.0
2020-01-30  28.62  28.17   28.941  29.2288    -0.2878     0.0         0.0        -1.0
2020-02-21  30.40  32.05   28.719  28.5304     0.1886     1.0         1.0         0.0
2020-02-24  30.84  28.80   29.015  28.5932     0.4218     1.0         0.0         1.0
2020-03-10  27.11  27.74   28.596  28.6172    -0.0212     0.0        -1.0         0.0
2020-03-11  25.46  26.72   28.068  28.5420    -0.4740     0.0         0.0        -1.0
2020-03-25  31.07  33.60   29.305  28.9776     0.3274     1.0         1.0         0.0
2020-03-26  33.81  30.89   30.409  29.1604     1.2486     1.0         0.0         1.0
2020-05-11  39.05  39.67   41.486  41.6656    -0.1796     0.0        -1.0         0.0
2020-05-12  40.36  39.66   41.106  41.9512    -0.8452     0.0         0.0        -1.0

List the signal change and entry/exit points for CL
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-29  67.82  67.81   67.160  67.0944     0.0656     1.0         1.0         0.0
2019-12-02  67.57  68.00   67.280  67.0608     0.2192     1.0         0.0         1.0
2020-03-02  72.44  68.51   73.434  73.8840    -0.4500     0.0        -1.0         0.0
2020-03-03  71.78  72.55   73.005  73.9512    -0.9462     0.0         0.0        -1.0
2020-04-08  70.22  69.64   67.312  66.8864     0.4256     1.0         1.0         0.0
2020-04-09  69.91  70.66   67.921  66.7892     1.1318     1.0         0.0         1.0
2020-05-06  67.84  69.39   70.057  70.2828    -0.2258     0.0        -1.0         0.0
2020-05-07  68.80  68.90   69.814  70.4128    -0.5988     0.0         0.0        -1.0
2020-05-28  72.09  71.60   69.907  69.7688     0.1382     1.0         1.0         0.0

List the signal change and entry/exit points for CLX
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  150.30  147.23  147.546  147.2940     0.2520     1.0         1.0         0.0
2019-12-05  150.79  149.90  147.987  147.2936     0.6934     1.0         0.0         1.0
2020-04-02  179.70  173.79  172.991  174.0764    -1.0854     0.0        -1.0         0.0
2020-04-03  177.54  178.31  173.005  174.8012    -1.7962     0.0         0.0        -1.0
2020-04-08  181.04  182.88  176.985  176.0620     0.9230     1.0         1.0         0.0
2020-04-09  184.21  179.23  178.095  176.3964     1.6986     1.0         0.0         1.0

List the signal change and entry/exit points for CMG
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-26  815.84  799.05  771.961  766.7676     5.1934     1.0         1.0         0.0
2019-11-27  816.75  817.13  778.306  767.9100    10.3960     1.0         0.0         1.0
2020-02-28  773.58  734.50  874.850  876.3612    -1.5112     0.0        -1.0         0.0
2020-03-02  768.81  779.52  859.537  872.3252   -12.7882     0.0         0.0        -1.0
2020-04-06  689.99  632.30  645.455  636.0728     9.3822     1.0         1.0         0.0
2020-04-07  704.30  750.00  649.480  634.8020    14.6780     1.0         0.0         1.0

List the signal change and entry/exit points for CNC
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  55.35  54.80   53.225  49.6260     3.5990     1.0         1.0         0.0
2019-11-14  54.65  55.46   53.382  50.0484     3.3336     1.0         0.0         1.0
2019-12-20  61.93  61.24   59.677  59.8004    -0.1234     0.0        -1.0         0.0
2019-12-23  62.90  62.29   60.050  60.0140     0.0360     1.0         1.0        -1.0
2019-12-24  63.23  63.00   60.411  60.1688     0.2422     1.0         0.0         1.0
2020-02-06  64.35  65.81   64.208  64.2088    -0.0008     0.0        -1.0         0.0
2020-02-07  63.16  64.43   63.863  64.2600    -0.3970     0.0         0.0        -1.0
2020-02-19  67.37  66.72   65.169  64.8392     0.3298     1.0         1.0         0.0
2020-02-20  65.73  66.70   65.135  64.9416     0.1934     1.0         0.0         1.0
2020-02-25  55.95  59.78   64.163  64.4056    -0.2426     0.0        -1.0         0.0
2020-02-26  54.39  55.84   63.231  63.9616    -0.7306     0.0         0.0        -1.0
2020-04-07  60.15  62.41   57.016  56.2684     0.7476     1.0         1.0         0.0
2020-04-08  65.15  60.63   58.302  56.3760     1.9260     1.0         0.0         1.0
2020-05-11  67.54  65.39   66.263  66.9132    -0.6502     0.0        -1.0         0.0
2020-05-12  66.75  68.38   66.221  67.1784    -0.9574     0.0         0.0        -1.0

List the signal change and entry/exit points for COR
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-15  115.54  114.02  112.300  112.0904     0.2096     1.0         1.0         0.0
2020-01-16  117.37  115.80  112.951  112.2708     0.6802     1.0         0.0         1.0
2020-02-12  112.12  111.36  115.033  115.5256    -0.4926     0.0        -1.0         0.0
2020-02-13  113.14  112.23  114.572  115.6120    -1.0400     0.0         0.0        -1.0
2020-04-03  111.58  113.56  107.715  106.9820     0.7330     1.0         1.0         0.0
2020-04-06  115.89  113.79  109.959  107.2368     2.7222     1.0         0.0         1.0
2020-05-26  120.89  123.93  121.224  121.3052    -0.0812     0.0        -1.0         0.0
2020-05-27  124.61  121.94  121.606  121.6524    -0.0464     0.0         0.0        -1.0
2020-05-28  127.75  125.47  122.268  122.0104     0.2576     1.0         1.0         0.0

List the signal change and entry/exit points for COST
             close     open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  302.90  300.180  300.284  299.3636     0.9204     1.0         1.0         0.0
2019-11-14  304.59  304.390  301.032  299.6616     1.3704     1.0         0.0         1.0
2019-12-03  295.67  295.130  299.631  300.3056    -0.6746     0.0        -1.0         0.0
2019-12-04  296.52  296.040  299.059  300.3320    -1.2730     0.0         0.0        -1.0
2020-01-13  299.87  296.920  294.666  294.5558     0.1102     1.0         1.0         0.0
2020-01-14  299.75  299.250  295.127  294.7480     0.3790     1.0         0.0         1.0
2020-03-02  309.14  294.440  309.869  310.3900    -0.5210     0.0        -1.0         0.0
2020-03-03  302.73  308.858  307.937  310.1212    -2.1842     0.0         0.0        -1.0
2020-04-13  299.62  298.580  295.751  294.7884     0.9626     1.0         1.0         0.0
2020-04-14  314.14  302.750  298.053  295.2748     2.7782     1.0         0.0         1.0
2020-05-08  305.94  305.900  305.798  306.5460    -0.7480     0.0        -1.0         0.0
2020-05-11  310.33  305.640  305.953  307.4132    -1.4602     0.0         0.0        -1.0

List the signal change and entry/exit points for COUP
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-19  147.46  144.82  136.501  134.5044     1.9966     1.0         1.0         0.0
2019-11-20  150.30  148.16  138.405  134.9040     3.5010     1.0         0.0         1.0
2019-12-17  140.49  143.72  145.832  146.3432    -0.5112     0.0        -1.0         0.0
2019-12-18  143.83  141.13  145.182  146.7748    -1.5928     0.0         0.0        -1.0
2020-01-02  153.57  149.55  148.516  148.1332     0.3828     1.0         1.0         0.0
2020-01-03  159.58  150.54  150.091  148.3740     1.7170     1.0         0.0         1.0
2020-02-05  158.64  170.54  163.726  165.0320    -1.3060     0.0        -1.0         0.0
2020-02-06  158.55  158.56  163.056  165.5240    -2.4680     0.0         0.0        -1.0
2020-02-21  163.31  167.23  165.206  164.9344     0.2716     1.0         1.0         0.0
2020-02-24  160.29  154.01  165.447  164.5868     0.8602     1.0         0.0         1.0
2020-02-28  149.75  147.26  162.618  162.6564    -0.0384     0.0        -1.0         0.0
2020-03-02  158.53  154.79  161.724  162.4496    -0.7256     0.0         0.0        -1.0
2020-03-30  150.52  147.63  140.281  140.0836     0.1974     1.0         1.0         0.0
2020-03-31  139.73  146.28  140.540  139.2768     1.2632     1.0         0.0         1.0

List the signal change and entry/exit points for CPB
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-20  48.28  48.23   47.132  47.0136     0.1184     1.0         1.0         0.0
2019-11-21  46.84  48.03   47.174  46.9688     0.2052     1.0         0.0         1.0
2020-01-13  47.72  47.73   48.271  48.3516    -0.0806     0.0        -1.0         0.0
2020-01-14  47.54  47.74   48.100  48.3432    -0.2432     0.0         0.0        -1.0
2020-01-29  48.34  48.87   48.476  48.4732     0.0028     1.0         1.0         0.0
2020-01-30  49.03  48.41   48.601  48.4700     0.1310     1.0         0.0         1.0
2020-02-19  47.79  48.15   48.464  48.4756    -0.0116     0.0        -1.0         0.0
2020-02-20  47.74  47.72   48.338  48.4836    -0.1456     0.0         0.0        -1.0
2020-03-06  51.76  51.83   48.680  48.5224     0.1576     1.0         1.0         0.0
2020-03-09  50.20  49.69   48.898  48.5948     0.3032     1.0         0.0         1.0
2020-03-24  43.50  43.93   48.028  48.4812    -0.4532     0.0        -1.0         0.0
2020-03-25  41.41  43.13   47.122  48.2260    -1.1040     0.0         0.0        -1.0
2020-04-14  50.07  49.50   47.595  47.3284     0.2666     1.0         1.0         0.0
2020-04-15  50.50  51.42   48.029  47.2980     0.7310     1.0         0.0         1.0
2020-05-26  47.36  48.45   50.302  50.5608    -0.2588     0.0        -1.0         0.0
2020-05-27  48.66  47.00   49.928  50.4896    -0.5616     0.0         0.0        -1.0

List the signal change and entry/exit points for CRM
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  162.60  163.05  159.876  153.3064     6.5696     1.0         1.0         0.0
2019-11-14  163.05  163.03  160.532  153.9720     6.5600     1.0         0.0         1.0
2019-12-06  158.01  158.10  160.669  161.1612    -0.4922     0.0        -1.0         0.0
2019-12-09  157.48  157.38  160.136  161.0708    -0.9348     0.0         0.0        -1.0
2019-12-24  163.25  163.31  161.605  161.1064     0.4986     1.0         1.0         0.0
2019-12-26  164.51  163.40  162.417  161.1284     1.2886     1.0         0.0         1.0
2020-02-28  170.40  164.99  184.540  185.1540    -0.6140     0.0        -1.0         0.0
2020-03-02  176.76  172.20  183.221  184.9400    -1.7190     0.0         0.0        -1.0
2020-04-13  152.50  154.12  144.731  144.6208     0.1102     1.0         1.0         0.0
2020-04-14  157.71  155.71  145.517  144.8808     0.6362     1.0         0.0         1.0

List the signal change and entry/exit points for CRWD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-18  57.07  60.00   50.404  49.8974     0.5066     1.0         1.0         0.0
2019-11-19  56.00  57.45   51.134  49.9290     1.2050     1.0         0.0         1.0
2019-12-12  47.30  47.95   52.078  52.5940    -0.5160     0.0        -1.0         0.0
2019-12-13  49.41  47.50   51.219  52.7504    -1.5314     0.0         0.0        -1.0
2020-01-08  55.66  54.20   51.231  50.5712     0.6598     1.0         1.0         0.0
2020-01-09  55.94  56.95   52.050  50.5140     1.5360     1.0         0.0         1.0
2020-02-28  59.64  55.60   61.265  61.6976    -0.4326     0.0        -1.0         0.0
2020-03-02  59.13  60.20   60.693  61.6928    -0.9998     0.0         0.0        -1.0
2020-03-30  57.72  58.81   50.710  50.6804     0.0296     1.0         1.0         0.0
2020-03-31  55.68  57.03   52.477  50.5980     1.8790     1.0         0.0         1.0

List the signal change and entry/exit points for CTXS
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  111.94  111.05  110.155  105.7576     4.3974     1.0         1.0         0.0
2019-11-14  111.39  111.46  110.408  106.3348     4.0732     1.0         0.0         1.0
2019-12-10  109.68  110.22  111.571  111.7368    -0.1658     0.0        -1.0         0.0
2019-12-11  109.45  109.96  111.119  111.7632    -0.6442     0.0         0.0        -1.0
2020-01-06  113.01  111.32  111.170  111.0408     0.1292     1.0         1.0         0.0
2020-01-07  112.41  112.51  111.305  111.0248     0.2802     1.0         0.0         1.0
2020-02-20  119.57  122.14  121.915  122.0204    -0.1054     0.0        -1.0         0.0
2020-02-21  116.08  119.01  121.300  122.0512    -0.7512     0.0         0.0        -1.0
2020-03-17  127.46  113.76  114.696  114.6396     0.0564     1.0         1.0         0.0
2020-03-18  130.50  122.64  116.733  114.9948     1.7382     1.0         0.0         1.0
2020-05-06  147.72  147.70  144.446  145.0168    -0.5708     0.0        -1.0         0.0
2020-05-07  150.68  149.03  145.358  145.4784    -0.1204     0.0         0.0        -1.0
2020-05-08  150.98  151.59  145.852  145.8168     0.0352     1.0         1.0         0.0
2020-05-11  154.02  151.89  146.506  146.3244     0.1816     1.0         0.0         1.0
2020-05-20  137.44  138.04  145.631  146.0296    -0.3986     0.0        -1.0         0.0
2020-05-21  136.73  137.81  144.236  145.4764    -1.2404     0.0         0.0        -1.0

List the signal change and entry/exit points for D
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-25  83.23  83.55   82.162  81.9208     0.2412     1.0         1.0         0.0
2019-11-26  83.46  83.35   82.536  81.9464     0.5896     1.0         0.0         1.0
2019-12-11  80.90  80.48   81.548  81.6684    -0.1204     0.0        -1.0         0.0
2019-12-12  80.69  80.79   81.309  81.6584    -0.3494     0.0         0.0        -1.0
2019-12-31  82.82  82.27   81.828  81.7464     0.0816     1.0         1.0         0.0
2020-01-02  81.96  82.88   81.868  81.6956     0.1724     1.0         0.0         1.0
2020-03-04  89.03  84.23   85.904  85.9268    -0.0228     0.0        -1.0         0.0
2020-03-05  87.17  87.37   85.696  85.9980    -0.3020     0.0         0.0        -1.0
2020-04-13  79.53  80.60   74.643  73.8360     0.8070     1.0         1.0         0.0
2020-04-14  82.02  81.60   75.164  73.8636     1.3004     1.0         0.0         1.0
2020-05-08  78.40  78.72   77.717  77.7716    -0.0546     0.0        -1.0         0.0
2020-05-11  79.24  77.70   77.789  78.1592    -0.3702     0.0         0.0        -1.0
2020-05-18  79.85  79.99   78.707  78.5100     0.1970     1.0         1.0         0.0
2020-05-19  78.83  79.44   78.796  78.3824     0.4136     1.0         0.0         1.0

List the signal change and entry/exit points for DDOG
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  40.19  38.82   34.226  33.3800     0.8460     1.0         1.0         0.0
2019-11-14  41.37  40.18   35.004  33.6108     1.3932     1.0         0.0         1.0
2019-12-11  35.55  34.81   37.421  37.7524    -0.3314     0.0        -1.0         0.0
2019-12-12  35.73  35.45   36.808  37.8592    -1.0512     0.0         0.0        -1.0
2020-01-06  39.90  37.51   37.640  37.4220     0.2180     1.0         1.0         0.0
2020-01-07  40.06  39.95   37.795  37.3936     0.4014     1.0         0.0         1.0
2020-02-28  45.15  43.80   45.730  45.8410    -0.1110     0.0        -1.0         0.0
2020-03-02  44.79  45.00   45.506  45.9506    -0.4446     0.0         0.0        -1.0
2020-04-09  36.95  37.00   35.573  35.0844     0.4886     1.0         1.0         0.0
2020-04-13  37.87  37.69   35.905  34.8544     1.0506     1.0         0.0         1.0

List the signal change and entry/exit points for DG
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-31  155.98  157.17  156.089  155.7116     0.3774     1.0         1.0         0.0
2020-01-02  156.54  156.95  156.225  155.5764     0.6486     1.0         0.0         1.0
2020-01-09  152.58  151.80  154.810  154.9500    -0.1400     0.0        -1.0         0.0
2020-01-10  153.22  153.17  154.601  154.9368    -0.3358     0.0         0.0        -1.0
2020-01-23  155.14  153.85  155.793  155.5620     0.2310     1.0         1.0         0.0
2020-01-24  154.34  154.92  155.969  155.5284     0.4406     1.0         0.0         1.0
2020-02-04  155.99  155.91  155.341  155.4104    -0.0694     0.0        -1.0         0.0
2020-02-05  157.26  156.60  155.617  155.4068     0.2102     1.0         1.0        -1.0
2020-02-06  155.47  157.76  155.650  155.3864     0.2636     1.0         0.0         1.0
2020-03-09  159.28  150.79  158.345  158.9184    -0.5734     0.0        -1.0         0.0
2020-03-10  166.25  162.63  158.820  159.3776    -0.5576     0.0         0.0        -1.0
2020-04-07  169.18  168.67  153.554  151.4676     2.0864     1.0         1.0         0.0
2020-04-08  169.22  169.74  156.753  151.8300     4.9230     1.0         0.0         1.0

List the signal change and entry/exit points for DHR
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-19  143.60  140.16  137.467  137.1488     0.3182     1.0         1.0         0.0
2019-11-20  142.96  143.07  138.277  137.3716     0.9054     1.0         0.0         1.0
2020-02-24  156.82  155.30  162.674  162.9892    -0.3152     0.0        -1.0         0.0
2020-02-25  151.65  157.73  161.540  162.5328    -0.9928     0.0         0.0        -1.0
2020-04-07  138.30  145.28  136.631  136.0736     0.5574     1.0         1.0         0.0
2020-04-08  145.13  141.83  138.212  135.6396     2.5724     1.0         0.0         1.0
2020-05-20  158.99  160.79  161.264  161.3272    -0.0632     0.0        -1.0         0.0
2020-05-21  157.66  158.17  160.682  161.4388    -0.7568     0.0         0.0        -1.0

List the signal change and entry/exit points for DOCU
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  67.82  66.69   66.782  66.2308     0.5512     1.0         1.0         0.0
2019-11-14  67.75  68.00   66.938  66.2552     0.6828     1.0         0.0         1.0
2020-01-21  73.13  72.35   74.086  74.1420    -0.0560     0.0        -1.0         0.0
2020-01-22  74.42  73.70   74.004  74.1700    -0.1660     0.0         0.0        -1.0
2020-01-31  78.51  78.83   75.083  74.7828     0.3002     1.0         1.0         0.0
2020-02-03  80.63  79.10   75.893  75.0304     0.8626     1.0         0.0         1.0
2020-03-09  77.63  77.18   84.973  85.6036    -0.6306     0.0        -1.0         0.0
2020-03-10  79.82  80.00   84.649  85.5712    -0.9222     0.0         0.0        -1.0
2020-03-31  92.40  88.08   82.883  81.5828     1.3002     1.0         1.0         0.0
2020-04-01  92.09  90.82   84.431  81.9232     2.5078     1.0         0.0         1.0

List the signal change and entry/exit points for DPZ
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  279.40  276.99  276.561  266.6224     9.9386     1.0         1.0         0.0
2019-11-14  278.66  278.69  277.265  267.5780     9.6870     1.0         0.0         1.0
2020-01-14  285.12  284.03  290.532  290.8024    -0.2704     0.0        -1.0         0.0
2020-01-15  288.57  284.97  290.011  290.8904    -0.8794     0.0         0.0        -1.0
2020-02-19  297.10  297.99  283.507  283.5028     0.0042     1.0         1.0         0.0
2020-02-20  373.16  362.03  293.022  287.0244     5.9976     1.0         0.0         1.0
2020-03-17  298.74  291.64  324.341  327.5388    -3.1978     0.0        -1.0         0.0
2020-03-18  290.00  296.54  319.152  328.1088    -8.9568     0.0         0.0        -1.0
2020-04-01  333.77  312.01  329.381  328.0612     1.3198     1.0         1.0         0.0
2020-04-02  333.45  330.22  330.412  327.4848     2.9272     1.0         0.0         1.0

List the signal change and entry/exit points for DXCM
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  202.90  204.22  178.426  163.4088    15.0172     1.0         1.0         0.0
2019-11-14  202.81  204.81  183.283  165.3428    17.9402     1.0         0.0         1.0
2019-12-17  217.33  213.24  216.520  217.4820    -0.9620     0.0        -1.0         0.0
2019-12-18  218.65  216.83  215.467  217.9824    -2.5154     0.0         0.0        -1.0
2020-01-07  231.45  225.01  219.667  218.5140     1.1530     1.0         1.0         0.0
2020-01-08  233.23  230.78  221.351  218.8864     2.4646     1.0         0.0         1.0
2020-03-13  244.02  256.32  270.579  272.7260    -2.1470     0.0        -1.0         0.0
2020-03-16  202.30  215.00  262.236  271.2092    -8.9732     0.0         0.0        -1.0
2020-04-03  260.75  263.62  252.822  249.6780     3.1440     1.0         1.0         0.0
2020-04-06  269.31  272.37  258.723  249.0212     9.7018     1.0         0.0         1.0

List the signal change and entry/exit points for EA
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13   96.00   96.62   97.100   96.0328     1.0672     1.0         1.0         0.0
2019-11-14   97.54   96.20   97.214   96.2332     0.9808     1.0         0.0         1.0
2020-02-06  110.00  108.80  109.649  109.9128    -0.2638     0.0        -1.0         0.0
2020-02-07  109.09  109.17  109.325  109.9828    -0.6578     0.0         0.0        -1.0
2020-04-07  106.32  107.13   99.755   98.5688     1.1862     1.0         1.0         0.0
2020-04-08  106.80  106.95  101.471   98.3676     3.1034     1.0         0.0         1.0

List the signal change and entry/exit points for EBAY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  34.97  34.81  35.2510  35.2256     0.0254     1.0         1.0         0.0
2019-12-05  34.79  34.94  35.2440  35.1828     0.0612     1.0         0.0         1.0
2019-12-10  34.72  34.67  35.0680  35.1124    -0.0444     0.0        -1.0         0.0
2019-12-11  34.92  34.70  34.9850  35.0900    -0.1050     0.0         0.0        -1.0
2019-12-19  36.04  35.52  35.2835  35.2210     0.0625     1.0         1.0         0.0
2019-12-20  36.19  36.02  35.4165  35.2702     0.1463     1.0         0.0         1.0
2020-01-14  35.35  34.67  35.5515  35.6086    -0.0571     0.0        -1.0         0.0
2020-01-15  35.33  35.43  35.4735  35.6390    -0.1655     0.0         0.0        -1.0
2020-02-06  38.00  37.73  35.7175  35.6348     0.0827     1.0         1.0         0.0
2020-02-07  36.20  35.83  35.8015  35.6308     0.1707     1.0         0.0         1.0
2020-03-06  36.39  35.71  36.4870  36.7112    -0.2242     0.0        -1.0         0.0
2020-03-09  35.52  34.02  36.3130  36.7896    -0.4766     0.0         0.0        -1.0
2020-04-14  35.74  35.45  31.7580  31.3352     0.4228     1.0         1.0         0.0
2020-04-15  36.19  35.31  32.3710  31.3412     1.0298     1.0         0.0         1.0

List the signal change and entry/exit points for EBS
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  54.71  54.75   56.215  55.0604     1.1546     1.0         1.0         0.0
2019-11-14  54.35  55.00   55.934  55.1344     0.7996     1.0         0.0         1.0
2019-11-18  54.35  54.54   55.289  55.2992    -0.0102     0.0        -1.0         0.0
2019-11-19  54.11  54.61   54.886  55.2944    -0.4084     0.0         0.0        -1.0
2019-12-31  53.95  54.05   54.065  53.9180     0.1470     1.0         1.0         0.0
2020-01-02  54.00  54.27   54.197  53.8960     0.3010     1.0         0.0         1.0
2020-03-04  61.22  58.62   60.036  60.4208    -0.3848     0.0        -1.0         0.0
2020-03-05  60.83  57.57   59.661  60.6096    -0.9486     0.0         0.0        -1.0
2020-04-07  59.18  63.48   56.518  56.5176     0.0004     1.0         1.0         0.0
2020-04-08  61.93  60.22   57.239  56.5460     0.6930     1.0         0.0         1.0

List the signal change and entry/exit points for EQIX
             close     open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-25  553.85  559.610  553.062  552.8464     0.2156     1.0         1.0         0.0
2019-11-26  554.68  553.220  555.406  552.2364     3.1696     1.0         0.0         1.0
2020-03-06  608.67  599.590  617.922  620.6486    -2.7266     0.0        -1.0         0.0
2020-03-09  574.06  571.000  611.104  620.0218    -8.9178     0.0         0.0        -1.0
2020-04-03  624.69  626.310  588.654  588.2816     0.3724     1.0         1.0         0.0
2020-04-06  652.22  639.780  604.962  589.6152    15.3468     1.0         0.0         1.0
2020-05-12  663.65  668.505  676.707  677.0112    -0.3042     0.0        -1.0         0.0
2020-05-13  678.80  663.480  676.655  679.2184    -2.5634     0.0         0.0        -1.0

List the signal change and entry/exit points for ETSY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-05  41.07  40.47  42.6245  42.4188     0.2057     1.0         1.0         0.0
2019-12-06  41.23  41.28  42.5995  42.2884     0.3111     1.0         0.0         1.0
2019-12-13  42.29  43.10  41.7160  41.8430    -0.1270     0.0        -1.0         0.0
2019-12-16  43.10  42.49  41.7140  41.8874    -0.1734     0.0         0.0        -1.0
2019-12-20  44.06  44.21  42.3460  42.2570     0.0890     1.0         1.0         0.0
2019-12-23  44.78  44.31  42.7080  42.3682     0.3398     1.0         0.0         1.0
2020-03-17  42.12  42.28  52.8760  53.4792    -0.6032     0.0        -1.0         0.0
2020-03-18  39.25  39.63  50.5550  53.0268    -2.4718     0.0         0.0        -1.0
2020-04-13  55.44  53.43  43.9780  43.2760     0.7020     1.0         1.0         0.0
2020-04-14  57.66  55.76  45.8770  43.2424     2.6346     1.0         0.0         1.0

List the signal change and entry/exit points for EVBG
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13   84.60   83.05   76.801   73.0372     3.7638     1.0         1.0         0.0
2019-11-14   83.82   84.75   78.232   73.6948     4.5372     1.0         0.0         1.0
2019-12-13   80.26   80.56   83.353   84.0048    -0.6518     0.0        -1.0         0.0
2019-12-16   78.71   81.08   82.661   84.0312    -1.3702     0.0         0.0        -1.0
2020-01-10   83.67   84.16   81.228   81.0656     0.1624     1.0         1.0         0.0
2020-01-13   84.96   83.82   81.803   81.0816     0.7214     1.0         0.0         1.0
2020-04-07   97.85  107.11  106.633  108.5236    -1.8906     0.0        -1.0         0.0
2020-04-08  100.69   98.85  105.635  108.1792    -2.5442     0.0         0.0        -1.0
2020-04-21  117.31  123.00  109.837  109.6176     0.2194     1.0         1.0         0.0
2020-04-22  122.05  118.50  112.257  109.8372     2.4198     1.0         0.0         1.0

List the signal change and entry/exit points for GILD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-25  67.22  65.55   64.891  64.7744     0.1166     1.0         1.0         0.0
2019-11-26  67.28  66.68   65.187  64.8312     0.3558     1.0         0.0         1.0
2019-12-26  66.39  66.71   66.340  66.4748    -0.1348     0.0        -1.0         0.0
2019-12-27  65.95  66.38   66.172  66.5176    -0.3456     0.0         0.0        -1.0
2020-02-05  65.87  66.22   64.644  64.5604     0.0836     1.0         1.0         0.0
2020-02-06  68.21  67.29   65.071  64.6896     0.3814     1.0         0.0         1.0
2020-03-25  69.66  73.87   73.021  73.1264    -0.1054     0.0        -1.0         0.0
2020-03-26  73.86  69.90   73.549  73.4008     0.1482     1.0         1.0        -1.0
2020-03-27  72.85  73.71   73.759  73.5268     0.2322     1.0         0.0         1.0
2020-04-02  76.98  71.81   73.638  73.9196    -0.2816     0.0        -1.0         0.0
2020-04-03  78.21  77.41   74.133  74.2736    -0.1406     0.0         0.0        -1.0
2020-04-06  77.73  79.24   74.645  74.3668     0.2782     1.0         1.0         0.0
2020-04-07  74.67  77.30   74.716  74.3852     0.3308     1.0         0.0         1.0
2020-05-14  77.23  76.55   78.495  78.8352    -0.3402     0.0        -1.0         0.0
2020-05-15  76.26  76.47   78.126  78.9452    -0.8192     0.0         0.0        -1.0

List the signal change and entry/exit points for GIS
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-14  52.53  52.86   52.095  51.9804     0.1146     1.0         1.0         0.0
2019-11-15  52.56  52.51   52.233  51.9088     0.3242     1.0         0.0         1.0
2019-12-16  52.38  51.82   52.778  52.8196    -0.0416     0.0        -1.0         0.0
2019-12-17  52.17  52.21   52.630  52.8120    -0.1820     0.0         0.0        -1.0
2019-12-31  53.56  52.75   52.944  52.9408     0.0032     1.0         1.0         0.0
2020-01-02  52.13  53.63   52.940  52.9172     0.0228     1.0         0.0         1.0
2020-01-03  51.94  52.23   52.816  52.8628    -0.0468     0.0        -1.0         0.0
2020-01-06  52.59  52.08   52.755  52.8272    -0.0722     0.0         0.0        -1.0
2020-01-16  53.72  53.53   52.752  52.6524     0.0996     1.0         1.0         0.0
2020-01-17  53.85  53.91   52.943  52.7432     0.1998     1.0         0.0         1.0
2020-02-06  51.71  52.32   52.873  52.9916    -0.1186     0.0        -1.0         0.0
2020-02-07  51.90  51.77   52.692  52.9824    -0.2904     0.0         0.0        -1.0
2020-02-24  53.72  53.32   53.290  53.1976     0.0924     1.0         1.0         0.0
2020-02-25  52.53  53.68   53.307  53.1448     0.1622     1.0         0.0         1.0
2020-02-28  49.00  48.87   52.567  52.6936    -0.1266     0.0        -1.0         0.0
2020-03-02  51.41  49.21   52.377  52.6016    -0.2246     0.0         0.0        -1.0
2020-03-13  53.48  52.95   53.088  52.7796     0.3084     1.0         1.0         0.0
2020-03-16  53.38  49.40   53.285  52.8388     0.4462     1.0         0.0         1.0
2020-03-25  47.65  48.12   52.449  52.6988    -0.2498     0.0        -1.0         0.0
2020-03-26  50.00  47.81   52.449  52.5336    -0.0846     0.0         0.0        -1.0
2020-04-07  56.44  57.90   53.519  53.4548     0.0642     1.0         1.0         0.0
2020-04-08  55.73  56.09   54.327  53.5172     0.8098     1.0         0.0         1.0

List the signal change and entry/exit points for GOLD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-29  16.80  16.77   16.742  16.7392     0.0028     1.0         1.0         0.0
2019-12-02  16.89  16.76   16.774  16.7268     0.0472     1.0         0.0         1.0
2020-01-17  17.95  18.13   17.908  17.9672    -0.0592     0.0        -1.0         0.0
2020-01-21  18.35  17.96   17.904  17.9988    -0.0948     0.0         0.0        -1.0
2020-01-28  18.00  18.40   18.190  18.1596     0.0304     1.0         1.0         0.0
2020-01-29  18.37  18.09   18.271  18.1964     0.0746     1.0         0.0         1.0
2020-03-12  16.88  16.97   19.793  19.8536    -0.0606     0.0        -1.0         0.0
2020-03-13  15.67  17.45   19.456  19.7464    -0.2904     0.0         0.0        -1.0
2020-04-02  19.85  19.10   18.657  18.6468     0.0102     1.0         1.0         0.0
2020-04-03  19.95  19.74   19.064  18.6832     0.3808     1.0         0.0         1.0
2020-05-26  24.73  25.90   26.720  26.7292    -0.0092     0.0        -1.0         0.0
2020-05-27  23.92  23.45   26.508  26.6932    -0.1852     0.0         0.0        -1.0

List the signal change and entry/exit points for GOOG
              close     open   fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  1298.00  1294.07  1292.527  1265.5940    26.9330     1.0         1.0         0.0
2019-11-14  1311.46  1297.50  1297.662  1269.7056    27.9564     1.0         0.0         1.0
2020-02-27  1318.09  1362.06  1460.633  1466.6916    -6.0586     0.0        -1.0         0.0
2020-02-28  1339.33  1277.50  1443.100  1460.7988   -17.6988     0.0         0.0        -1.0
2020-04-09  1211.45  1224.08  1153.984  1153.1244     0.8596     1.0         1.0         0.0
2020-04-13  1217.56  1209.18  1164.669  1149.8904    14.7786     1.0         0.0         1.0

List the signal change and entry/exit points for GSK
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  44.66  44.65   44.680  43.7524     0.9276     1.0         1.0         0.0
2019-11-14  43.85  43.80   44.485  43.8164     0.6686     1.0         0.0         1.0
2019-11-22  44.01  44.13   44.217  44.2556    -0.0386     0.0        -1.0         0.0
2019-11-25  44.48  44.49   44.239  44.3308    -0.0918     0.0         0.0        -1.0
2019-12-03  44.65  44.22   44.626  44.6224     0.0036     1.0         1.0         0.0
2019-12-04  45.07  44.51   44.683  44.6416     0.0414     1.0         0.0         1.0
2020-01-16  47.16  47.06   46.780  46.7868    -0.0068     0.0        -1.0         0.0
2020-01-17  47.89  48.15   46.921  46.8508     0.0702     1.0         1.0        -1.0
2020-01-21  47.50  47.66   47.021  46.9136     0.1074     1.0         0.0         1.0
2020-02-05  45.07  46.01   46.822  46.9244    -0.1024     0.0        -1.0         0.0
2020-02-06  44.14  44.07   46.454  46.8104    -0.3564     0.0         0.0        -1.0
2020-04-08  38.08  37.78   37.476  37.1508     0.3252     1.0         1.0         0.0
2020-04-09  38.88  39.17   37.639  37.0024     0.6366     1.0         0.0         1.0
2020-05-19  40.93  41.26   41.700  41.7688    -0.0688     0.0        -1.0         0.0
2020-05-20  41.31  41.87   41.592  41.8284    -0.2364     0.0         0.0        -1.0

List the signal change and entry/exit points for HD
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-26  220.82  220.74  217.948  217.4820     0.4660     1.0         1.0         0.0
2019-12-27  219.97  221.20  218.741  217.4448     1.2962     1.0         0.0         1.0
2020-03-02  229.94  219.98  236.481  236.6716    -0.1906     0.0        -1.0         0.0
2020-03-03  227.94  230.03  234.881  236.5416    -1.6606     0.0         0.0        -1.0
2020-04-09  201.53  199.80  189.197  187.8952     1.3018     1.0         1.0         0.0
2020-04-13  198.79  200.45  190.021  186.7064     3.3146     1.0         0.0         1.0

List the signal change and entry/exit points for HRL
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  42.15  41.83   41.620  41.1540     0.4660     1.0         1.0         0.0
2019-11-14  42.23  42.22   41.754  41.1764     0.5776     1.0         0.0         1.0
2019-12-31  45.11  44.96   45.000  45.0164    -0.0164     0.0        -1.0         0.0
2020-01-02  44.31  45.14   44.981  45.0784    -0.0974     0.0         0.0        -1.0
2020-01-17  46.30  46.10   45.176  45.0176     0.1584     1.0         1.0         0.0
2020-01-21  46.95  46.34   45.444  45.0816     0.3624     1.0         0.0         1.0
2020-02-25  44.72  44.70   46.856  47.0524    -0.1964     0.0        -1.0         0.0
2020-02-26  43.94  44.94   46.502  46.9320    -0.4300     0.0         0.0        -1.0
2020-03-24  44.85  42.49   44.368  44.2372     0.1308     1.0         1.0         0.0
2020-03-25  41.94  44.01   44.335  43.9772     0.3578     1.0         0.0         1.0
2020-05-01  46.60  46.65   47.652  47.7428    -0.0908     0.0        -1.0         0.0
2020-05-04  46.46  46.55   47.306  47.8028    -0.4968     0.0         0.0        -1.0
2020-05-21  46.01  47.89   47.697  47.5932     0.1038     1.0         1.0         0.0
2020-05-22  46.93  45.48   47.666  47.4500     0.2160     1.0         0.0         1.0

List the signal change and entry/exit points for JNJ
             close    open  fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  131.27  131.04  131.388  130.83936    0.54864     1.0         1.0         0.0
2019-11-14  130.96  131.03  131.280  130.91536    0.36464     1.0         0.0         1.0
2020-02-24  145.91  146.50  149.745  150.00760   -0.26260     0.0        -1.0         0.0
2020-02-25  144.65  145.99  149.024  149.82680   -0.80280     0.0         0.0        -1.0
2020-04-08  143.26  137.75  133.050  131.17840    1.87160     1.0         1.0         0.0
2020-04-09  141.23  144.01  134.516  131.14720    3.36880     1.0         0.0         1.0
2020-05-13  147.13  146.08  148.385  148.96480   -0.57980     0.0        -1.0         0.0
2020-05-14  147.64  145.39  148.145  149.14000   -0.99500     0.0         0.0        -1.0

List the signal change and entry/exit points for K
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  64.41  64.09   63.827  62.7888     1.0382     1.0         1.0         0.0
2019-11-14  64.05  64.54   63.879  62.8560     1.0230     1.0         0.0         1.0
2020-02-04  68.68  69.17   69.109  69.2368    -0.1278     0.0        -1.0         0.0
2020-02-05  69.36  68.82   69.019  69.2600    -0.2410     0.0         0.0        -1.0
2020-04-09  62.74  60.98   61.662  61.2556     0.4064     1.0         1.0         0.0
2020-04-13  62.80  62.44   61.995  61.2400     0.7550     1.0         0.0         1.0
2020-05-12  63.53  63.56   63.942  64.0240    -0.0820     0.0        -1.0         0.0
2020-05-13  64.17  63.57   63.869  64.0888    -0.2198     0.0         0.0        -1.0

List the signal change and entry/exit points for KR
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  27.06  27.05   26.400  25.2892     1.1108     1.0         1.0         0.0
2019-11-14  26.91  27.02   26.627  25.4120     1.2150     1.0         0.0         1.0
2020-01-15  28.29  28.76   28.552  28.5796    -0.0276     0.0        -1.0         0.0
2020-01-16  28.08  28.34   28.494  28.5880    -0.0940     0.0         0.0        -1.0
2020-02-18  29.71  29.80   28.332  28.1604     0.1716     1.0         1.0         0.0
2020-02-19  29.54  29.97   28.547  28.2052     0.3418     1.0         0.0         1.0
2020-04-01  30.50  30.30   30.352  30.7112    -0.3592     0.0        -1.0         0.0
2020-04-02  31.60  30.23   30.094  30.8408    -0.7468     0.0         0.0        -1.0
2020-04-13  31.33  31.20   31.206  31.1036     0.1024     1.0         1.0         0.0
2020-04-14  32.09  32.05   31.450  31.1372     0.3128     1.0         0.0         1.0
2020-05-26  31.37  32.07   32.512  32.5616    -0.0496     0.0        -1.0         0.0
2020-05-27  33.28  31.47   32.485  32.6060    -0.1210     0.0         0.0        -1.0

List the signal change and entry/exit points for LLY
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  112.79  112.87  112.970  110.7280     2.2420     1.0         1.0         0.0
2019-11-14  111.39  112.26  112.714  110.9068     1.8072     1.0         0.0         1.0
2020-02-25  135.41  138.94  141.012  141.7472    -0.7352     0.0        -1.0         0.0
2020-02-26  133.53  136.03  139.940  141.4520    -1.5120     0.0         0.0        -1.0
2020-03-17  143.20  133.21  137.689  137.5604     0.1286     1.0         1.0         0.0
2020-03-18  143.09  136.34  137.960  137.5140     0.4460     1.0         0.0         1.0
2020-03-20  122.40  132.16  135.348  136.3212    -0.9732     0.0        -1.0         0.0
2020-03-23  119.05  120.95  133.681  135.4384    -1.7574     0.0         0.0        -1.0
2020-04-06  141.61  142.27  135.032  135.0060     0.0260     1.0         1.0         0.0
2020-04-07  141.88  143.13  136.931  135.4688     1.4622     1.0         0.0         1.0
2020-05-20  153.13  155.27  156.608  156.7200    -0.1120     0.0        -1.0         0.0
2020-05-21  152.28  153.15  156.539  156.6220    -0.0830     0.0         0.0        -1.0

List the signal change and entry/exit points for LOGI
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  41.75  41.75   41.481  41.1548     0.3262     1.0         1.0         0.0
2019-11-14  41.37  41.29   41.543  41.1916     0.3514     1.0         0.0         1.0
2020-01-30  46.00  45.81   47.272  47.3020    -0.0300     0.0        -1.0         0.0
2020-01-31  44.63  45.37   47.039  47.2152    -0.1762     0.0         0.0        -1.0
2020-03-26  42.50  41.08   39.639  39.3860     0.2530     1.0         1.0         0.0
2020-03-27  41.12  41.35   40.066  39.3324     0.7336     1.0         0.0         1.0

List the signal change and entry/exit points for LVGO
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  26.71  25.45   23.939  21.8540     2.0850     1.0         1.0         0.0
2019-11-14  25.36  26.76   24.316  22.1140     2.2020     1.0         0.0         1.0
2019-12-13  25.90  27.13   27.011  27.1304    -0.1194     0.0        -1.0         0.0
2019-12-16  26.56  26.41   26.899  27.1828    -0.2838     0.0         0.0        -1.0
2020-01-14  30.82  28.82   26.488  26.2604     0.2276     1.0         1.0         0.0
2020-01-15  30.90  31.00   27.072  26.3992     0.6728     1.0         0.0         1.0
2020-02-03  23.96  23.96   26.157  26.5934    -0.4364     0.0        -1.0         0.0
2020-02-04  24.57  24.00   25.724  26.6066    -0.8826     0.0         0.0        -1.0
2020-02-21  27.82  28.25   26.852  26.5940     0.2580     1.0         1.0         0.0
2020-02-24  27.13  26.35   27.025  26.4906     0.5344     1.0         0.0         1.0
2020-03-09  24.54  24.99   26.062  26.2330    -0.1710     0.0        -1.0         0.0
2020-03-10  27.24  25.50   26.259  26.3642    -0.1052     0.0         0.0        -1.0
2020-04-03  29.05  27.75   25.351  24.9856     0.3654     1.0         1.0         0.0
2020-04-06  30.09  30.15   26.244  25.1212     1.1228     1.0         0.0         1.0

List the signal change and entry/exit points for MASI
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-19  153.22  151.07  146.070  145.6268     0.4432     1.0         1.0         0.0
2019-11-20  155.43  153.15  147.532  146.0044     1.5276     1.0         0.0         1.0
2020-03-02  178.06  165.80  174.199  175.1024    -0.9034     0.0        -1.0         0.0
2020-03-03  171.20  177.86  173.170  175.2416    -2.0716     0.0         0.0        -1.0
2020-03-13  186.78  179.42  179.476  177.7168     1.7592     1.0         1.0         0.0
2020-03-16  174.19  174.84  179.089  177.6704     1.4186     1.0         0.0         1.0
2020-03-19  164.39  159.40  175.723  175.9552    -0.2322     0.0        -1.0         0.0
2020-03-20  155.10  165.00  173.233  174.8008    -1.5678     0.0         0.0        -1.0
2020-04-06  185.13  184.00  175.456  173.8960     1.5600     1.0         1.0         0.0
2020-04-07  183.26  187.11  178.242  174.3784     3.8636     1.0         0.0         1.0

List the signal change and entry/exit points for MDLZ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-22  51.80  52.31   52.436  52.3992     0.0368     1.0         1.0         0.0
2019-11-25  52.04  51.85   52.460  52.3380     0.1220     1.0         0.0         1.0
2020-01-14  54.19  54.63   54.299  54.3640    -0.0650     0.0        -1.0         0.0
2020-01-15  54.74  54.53   54.265  54.3868    -0.1218     0.0         0.0        -1.0
2020-01-22  55.46  55.74   54.736  54.6724     0.0636     1.0         1.0         0.0
2020-01-23  55.44  55.35   54.875  54.7416     0.1334     1.0         0.0         1.0
2020-03-02  55.60  52.63   57.123  57.4796    -0.3566     0.0        -1.0         0.0
2020-03-03  54.79  55.42   56.636  57.4836    -0.8476     0.0         0.0        -1.0
2020-04-08  51.79  52.02   50.347  49.5828     0.7642     1.0         1.0         0.0
2020-04-09  52.34  51.79   50.691  49.4020     1.2890     1.0         0.0         1.0
2020-05-01  50.70  51.14   51.537  51.5772    -0.0402     0.0        -1.0         0.0
2020-05-04  50.06  50.76   51.194  51.6640    -0.4700     0.0         0.0        -1.0

List the signal change and entry/exit points for MKC
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-18  165.47  162.47  161.464  161.1184     0.3456     1.0         1.0         0.0
2019-11-19  165.96  165.45  162.158  161.3168     0.8412     1.0         0.0         1.0
2019-12-23  167.25  169.09  168.190  168.6872    -0.4972     0.0        -1.0         0.0
2019-12-24  168.25  167.36  167.879  168.7984    -0.9194     0.0         0.0        -1.0
2020-01-08  167.38  169.27  169.444  169.4184     0.0256     1.0         1.0         0.0
2020-01-09  162.24  164.71  168.843  169.0744    -0.2314     0.0        -1.0         1.0
2020-01-10  164.23  161.72  168.304  168.7888    -0.4848     0.0         0.0        -1.0
2020-01-24  172.67  174.27  168.898  168.6776     0.2204     1.0         1.0         0.0
2020-01-27  172.71  172.33  169.746  168.8872     0.8588     1.0         0.0         1.0
2020-02-04  160.70  163.40  167.689  167.7944    -0.1054     0.0        -1.0         0.0
2020-02-05  162.01  161.65  166.637  167.4596    -0.8226     0.0         0.0        -1.0
2020-04-07  150.30  152.58  140.550  138.4376     2.1124     1.0         1.0         0.0
2020-04-08  149.10  149.68  143.041  138.2464     4.7946     1.0         0.0         1.0

List the signal change and entry/exit points for MKTX
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  374.36  365.49  358.145  352.7900     5.3550     1.0         1.0         0.0
2019-11-14  379.22  374.00  359.208  353.5952     5.6128     1.0         0.0         1.0
2019-12-13  373.89  367.76  380.489  384.0832    -3.5942     0.0        -1.0         0.0
2019-12-16  374.69  374.64  378.061  385.1848    -7.1238     0.0         0.0        -1.0
2020-03-06  362.36  368.91  348.271  346.2248     2.0462     1.0         1.0         0.0
2020-03-09  352.31  342.85  349.311  346.1500     3.1610     1.0         0.0         1.0
2020-03-18  305.36  300.00  339.046  341.0468    -2.0008     0.0        -1.0         0.0
2020-03-19  316.13  303.56  332.906  340.2720    -7.3660     0.0         0.0        -1.0
2020-04-06  399.03  394.18  350.407  341.1096     9.2974     1.0         1.0         0.0
2020-04-07  381.50  400.55  355.885  342.3064    13.5786     1.0         0.0         1.0

List the signal change and entry/exit points for MRNA
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  18.25  18.00  17.0860  16.1566     0.9294     1.0         1.0         0.0
2019-11-14  18.34  18.16  17.2450  16.3238     0.9212     1.0         0.0         1.0
2019-12-16  18.52  18.60  19.4020  19.4428    -0.0408     0.0        -1.0         0.0
2019-12-17  18.44  18.54  19.1180  19.4844    -0.3664     0.0         0.0        -1.0
2020-01-03  18.89  19.02  19.4800  19.4556     0.0244     1.0         1.0         0.0
2020-01-06  18.13  18.70  19.3520  19.3660    -0.0140     0.0        -1.0         1.0
2020-01-07  17.78  18.15  19.1470  19.2628    -0.1158     0.0         0.0        -1.0
2020-01-16  21.01  21.68  19.1830  19.1624     0.0206     1.0         1.0         0.0
2020-01-17  20.62  21.50  19.3560  19.2412     0.1148     1.0         0.0         1.0
2020-02-14  19.00  19.27  20.6475  20.8158    -0.1683     0.0        -1.0         0.0
2020-02-18  18.91  19.14  20.5005  20.8066    -0.3061     0.0         0.0        -1.0
2020-02-28  25.93  23.38  21.7200  21.3178     0.4022     1.0         1.0         0.0
2020-03-02  29.88  27.00  22.8080  21.6682     1.1398     1.0         0.0         1.0

List the signal change and entry/exit points for MRVL
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  28.11  27.78  26.7110  25.1540     1.5570     1.0         1.0         0.0
2019-11-14  26.99  27.68  26.9710  25.3020     1.6690     1.0         0.0         1.0
2019-12-02  25.81  26.44  26.3050  26.3308    -0.0258     0.0        -1.0         0.0
2019-12-03  25.16  24.94  26.2090  26.3312    -0.1222     0.0         0.0        -1.0
2019-12-23  26.50  26.08  25.5600  25.5548     0.0052     1.0         1.0         0.0
2019-12-24  26.55  26.60  25.8470  25.5720     0.2750     1.0         0.0         1.0
2020-01-31  24.04  24.79  26.5235  26.6578    -0.1343     0.0        -1.0         0.0
2020-02-03  24.21  24.31  26.0955  26.5492    -0.4537     0.0         0.0        -1.0
2020-04-01  21.64  21.80  21.2430  21.2296     0.0134     1.0         1.0         0.0
2020-04-02  22.65  21.29  21.6240  21.3136     0.3104     1.0         0.0         1.0

List the signal change and entry/exit points for MSFT
             close     open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  147.31  146.740  145.087  142.1050     2.9820     1.0         1.0         0.0
2019-11-14  148.06  147.020  145.556  142.4634     3.0926     1.0         0.0         1.0
2020-02-28  162.01  152.410  175.219  175.9800    -0.7610     0.0        -1.0         0.0
2020-03-02  172.79  165.310  173.963  176.2900    -2.3270     0.0         0.0        -1.0
2020-04-06  165.27  160.320  154.548  152.3948     2.1532     1.0         1.0         0.0
2020-04-07  163.49  169.592  156.063  152.3540     3.7090     1.0         0.0         1.0

List the signal change and entry/exit points for NET
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  16.26  16.00   16.502  16.0692     0.4328     1.0         1.0         0.0
2019-11-14  16.67  16.12   16.485  16.0828     0.4022     1.0         0.0         1.0
2019-12-18  17.39  17.55   17.774  17.8180    -0.0440     0.0        -1.0         0.0
2019-12-19  18.00  17.40   17.801  17.8876    -0.0866     0.0         0.0        -1.0
2020-01-14  18.70  18.52   17.596  17.5752     0.0208     1.0         1.0         0.0
2020-01-15  18.85  18.70   17.775  17.6208     0.1542     1.0         0.0         1.0
2020-02-06  17.77  18.00   17.883  17.9344    -0.0514     0.0        -1.0         0.0
2020-02-07  18.17  17.88   17.923  17.9800    -0.0570     0.0         0.0        -1.0
2020-02-20  20.30  18.15   18.210  18.1516     0.0584     1.0         1.0         0.0
2020-02-21  21.02  20.30   18.535  18.2384     0.2966     1.0         0.0         1.0
2020-03-18  19.70  17.76   20.109  20.1548    -0.0458     0.0        -1.0         0.0
2020-03-19  20.69  19.80   19.843  20.2696    -0.4266     0.0         0.0        -1.0
2020-03-30  23.89  22.10   21.373  21.1572     0.2158     1.0         1.0         0.0
2020-03-31  23.48  24.16   21.852  21.2848     0.5672     1.0         0.0         1.0

List the signal change and entry/exit points for NFLX
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  283.11  291.03  289.414  284.0444     5.3696     1.0         1.0         0.0
2019-11-14  289.62  283.25  289.635  284.4100     5.2250     1.0         0.0         1.0
2019-12-13  298.50  298.50  302.217  302.3528    -0.1358     0.0        -1.0         0.0
2019-12-16  304.21  300.85  301.639  302.8584    -1.2194     0.0         0.0        -1.0
2019-12-19  332.22  324.50  307.155  306.8264     0.3286     1.0         1.0         0.0
2019-12-20  336.90  335.00  310.110  308.7176     1.3924     1.0         0.0         1.0
2020-03-06  368.97  367.70  372.413  373.0492    -0.6362     0.0        -1.0         0.0
2020-03-09  346.49  343.86  370.192  373.1052    -2.9132     0.0         0.0        -1.0
2020-04-01  364.08  376.05  355.549  352.7094     2.8396     1.0         1.0         0.0
2020-04-02  370.08  364.08  359.354  352.6442     6.7098     1.0         0.0         1.0

List the signal change and entry/exit points for NVDA
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  208.57  208.35  207.383  200.2224     7.1606     1.0         1.0         0.0
2019-11-14  209.79  208.93  208.260  201.2928     6.9672     1.0         0.0         1.0
2020-03-06  266.04  265.36  269.181  270.0122    -0.8312     0.0        -1.0         0.0
2020-03-09  245.44  239.90  266.397  270.3726    -3.9756     0.0         0.0        -1.0
2020-04-02  255.47  244.24  245.094  245.0708     0.0232     1.0         1.0         0.0
2020-04-03  243.91  253.96  248.910  244.0244     4.8856     1.0         0.0         1.0

List the signal change and entry/exit points for OKTA
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  116.70  114.31  109.838  108.6008     1.2372     1.0         1.0         0.0
2019-11-14  115.96  116.71  110.527  108.6564     1.8706     1.0         0.0         1.0
2019-12-13  116.69  113.88  119.428  121.1740    -1.7460     0.0        -1.0         0.0
2019-12-16  116.23  116.99  118.856  121.4368    -2.5808     0.0         0.0        -1.0
2020-01-07  122.89  123.90  118.902  118.4400     0.4620     1.0         1.0         0.0
2020-01-08  125.55  123.31  119.648  118.5840     1.0640     1.0         0.0         1.0
2020-02-28  128.06  118.69  131.605  131.6628    -0.0578     0.0        -1.0         0.0
2020-03-02  133.43  130.05  131.245  131.8136    -0.5686     0.0         0.0        -1.0
2020-04-01  119.57  116.50  120.066  118.9244     1.1416     1.0         1.0         0.0
2020-04-02  115.99  119.43  120.270  118.6108     1.6592     1.0         0.0         1.0

List the signal change and entry/exit points for PANW
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  243.23  240.66  235.237  224.2664    10.9706     1.0         1.0         0.0
2019-11-14  245.51  240.64  237.049  225.7148    11.3342     1.0         0.0         1.0
2019-12-03  227.01  223.33  236.152  236.2624    -0.1104     0.0        -1.0         0.0
2019-12-04  225.62  227.04  233.896  236.3036    -2.4076     0.0         0.0        -1.0
2019-12-27  233.27  234.83  230.581  230.2868     0.2942     1.0         1.0         0.0
2019-12-30  231.43  232.59  231.025  229.6744     1.3506     1.0         0.0         1.0
2020-02-05  241.66  242.51  239.292  239.5492    -0.2572     0.0        -1.0         0.0
2020-02-06  246.07  242.57  239.409  240.1420    -0.7330     0.0         0.0        -1.0
2020-02-11  246.83  249.00  241.439  241.2488     0.1902     1.0         1.0         0.0
2020-02-12  244.72  247.39  242.156  241.3720     0.7840     1.0         0.0         1.0
2020-02-25  196.96  202.00  240.877  241.1224    -0.2454     0.0        -1.0         0.0
2020-02-26  189.58  197.08  235.152  238.9764    -3.8244     0.0         0.0        -1.0
2020-04-03  162.66  163.29  162.592  160.4084     2.1836     1.0         1.0         0.0
2020-04-06  171.34  169.36  165.110  159.6904     5.4196     1.0         0.0         1.0

List the signal change and entry/exit points for PEP
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-02  135.88  136.65  134.750  134.6404     0.1096     1.0         1.0         0.0
2019-12-03  135.46  136.66  134.890  134.5960     0.2940     1.0         0.0         1.0
2020-01-07  134.01  136.00  136.325  136.5932    -0.2682     0.0        -1.0         0.0
2020-01-08  134.70  134.46  136.091  136.5460    -0.4550     0.0         0.0        -1.0
2020-01-21  141.86  140.61  137.334  136.9644     0.3696     1.0         1.0         0.0
2020-01-22  143.38  141.81  138.271  137.1820     1.0890     1.0         0.0         1.0
2020-02-28  132.03  133.24  142.325  143.2938    -0.9688     0.0        -1.0         0.0
2020-03-02  137.58  132.00  141.384  143.0804    -1.6964     0.0         0.0        -1.0
2020-04-08  132.61  129.64  124.712  122.9536     1.7584     1.0         1.0         0.0
2020-04-09  133.63  132.09  126.049  122.7748     3.2742     1.0         0.0         1.0
2020-05-08  134.23  133.07  132.572  132.7372    -0.1652     0.0        -1.0         0.0
2020-05-11  134.38  133.43  132.564  133.1288    -0.5648     0.0         0.0        -1.0
2020-05-20  131.26  132.54  133.360  133.1784     0.1816     1.0         1.0         0.0
2020-05-21  130.21  130.98  133.226  132.9612     0.2648     1.0         0.0         1.0
2020-05-26  129.75  131.94  132.388  132.4864    -0.0984     0.0        -1.0         0.0
2020-05-27  130.81  129.72  132.175  132.4812    -0.3062     0.0         0.0        -1.0

List the signal change and entry/exit points for PFE
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  36.60  36.95   37.434  37.0036     0.4304     1.0         1.0         0.0
2019-11-14  36.55  36.56   37.252  37.0340     0.2180     1.0         0.0         1.0
2019-11-18  37.22  37.39   37.060  37.1176    -0.0576     0.0        -1.0         0.0
2019-11-19  37.66  37.43   37.078  37.1640    -0.0860     0.0         0.0        -1.0
2019-11-25  38.68  38.48   37.408  37.4072     0.0008     1.0         1.0         0.0
2019-11-26  38.29  38.55   37.540  37.4816     0.0584     1.0         0.0         1.0
2020-01-31  37.24  36.94   39.176  39.2980    -0.1220     0.0        -1.0         0.0
2020-02-03  37.51  37.46   38.876  39.2232    -0.3472     0.0         0.0        -1.0
2020-04-07  33.61  35.00   32.415  32.2640     0.1510     1.0         1.0         0.0
2020-04-08  34.60  33.99   32.900  32.1920     0.7080     1.0         0.0         1.0
2020-05-27  37.41  37.41   37.577  37.6292    -0.0522     0.0        -1.0         0.0
2020-05-28  38.18  37.84   37.690  37.7064    -0.0164     0.0         0.0        -1.0

List the signal change and entry/exit points for PG
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-02  122.72  121.94  121.554  121.3536     0.2004     1.0         1.0         0.0
2019-12-03  122.95  122.31  121.660  121.3324     0.3276     1.0         0.0         1.0
2020-01-07  121.99  122.88  124.153  124.3816    -0.2286     0.0        -1.0         0.0
2020-01-08  122.51  122.19  123.914  124.3732    -0.4592     0.0         0.0        -1.0
2020-01-22  126.31  126.33  125.074  124.6972     0.3768     1.0         1.0         0.0
2020-01-23  124.99  124.30  125.322  124.6744     0.6476     1.0         0.0         1.0
2020-02-19  125.44  124.85  125.522  125.5600    -0.0380     0.0        -1.0         0.0
2020-02-20  126.58  125.47  125.499  125.6356    -0.1366     0.0         0.0        -1.0
2020-04-08  115.10  114.39  112.704  111.7512     0.9528     1.0         1.0         0.0
2020-04-09  114.66  115.26  113.432  111.4724     1.9596     1.0         0.0         1.0
2020-05-06  113.10  115.54  116.917  117.2928    -0.3758     0.0        -1.0         0.0
2020-05-07  112.17  114.06  116.194  117.4064    -1.2124     0.0         0.0        -1.0

List the signal change and entry/exit points for PLD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-21  90.85  90.94   89.049  88.8108     0.2382     1.0         1.0         0.0
2019-11-22  90.56  90.94   89.398  88.8488     0.5492     1.0         0.0         1.0
2019-12-17  87.31  88.58   89.933  90.1548    -0.2218     0.0        -1.0         0.0
2019-12-18  87.55  87.05   89.578  90.1916    -0.6136     0.0         0.0        -1.0
2020-01-13  91.80  89.54   89.245  88.9904     0.2546     1.0         1.0         0.0
2020-01-14  90.63  91.55   89.422  88.9584     0.4636     1.0         0.0         1.0
2020-02-28  84.28  84.42   94.178  94.4992    -0.3212     0.0        -1.0         0.0
2020-03-02  88.27  84.70   93.250  94.1840    -0.9340     0.0         0.0        -1.0
2020-04-06  80.23  78.03   76.544  75.9232     0.6208     1.0         1.0         0.0
2020-04-07  80.95  86.32   77.584  75.5856     1.9984     1.0         0.0         1.0
2020-05-12  84.22  89.09   87.919  88.0464    -0.1274     0.0        -1.0         0.0
2020-05-13  82.84  83.56   87.187  88.1220    -0.9350     0.0         0.0        -1.0

List the signal change and entry/exit points for PRGO
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-06  52.29  52.10   50.681  50.3168     0.3642     1.0         1.0         0.0
2019-12-09  52.99  52.01   51.079  50.2524     0.8266     1.0         0.0         1.0
2020-01-03  49.96  50.51   52.545  52.5644    -0.0194     0.0        -1.0         0.0
2020-01-06  49.28  49.59   52.027  52.4992    -0.4722     0.0         0.0        -1.0
2020-01-17  59.02  59.86   53.266  53.1584     0.1076     1.0         1.0         0.0
2020-01-21  59.83  58.77   54.321  53.3704     0.9506     1.0         0.0         1.0
2020-02-27  51.82  55.33   58.579  58.8700    -0.2910     0.0        -1.0         0.0
2020-02-28  50.69  50.07   57.852  58.5184    -0.6664     0.0         0.0        -1.0
2020-04-09  50.45  50.20   46.922  46.3492     0.5728     1.0         1.0         0.0
2020-04-13  50.37  50.56   47.349  46.2372     1.1118     1.0         0.0         1.0

List the signal change and entry/exit points for PTON
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  25.98  24.46   24.009  23.1018     0.9072     1.0         1.0         0.0
2019-11-14  25.93  26.20   24.215  23.2134     1.0016     1.0         0.0         1.0
2019-12-23  29.22  30.15   31.449  31.7380    -0.2890     0.0        -1.0         0.0
2019-12-24  28.75  29.07   31.046  31.6780    -0.6320     0.0         0.0        -1.0
2020-01-21  32.00  31.69   29.954  29.8920     0.0620     1.0         1.0         0.0
2020-01-22  30.68  32.32   29.982  29.8580     0.1240     1.0         0.0         1.0
2020-02-13  28.85  28.20   30.320  30.4128    -0.0928     0.0        -1.0         0.0
2020-02-14  27.66  28.89   29.850  30.4044    -0.5544     0.0         0.0        -1.0
2020-03-30  27.70  26.80   25.110  25.0562     0.0538     1.0         1.0         0.0
2020-03-31  26.55  27.89   25.220  25.0338     0.1862     1.0         0.0         1.0

List the signal change and entry/exit points for PYPL
              close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-20  104.090  105.22  102.9340  102.9336     0.0004     1.0         1.0         0.0
2019-11-21  102.550  103.00  103.1420  102.8904     0.2516     1.0         0.0         1.0
2020-02-27  107.840  106.30  117.4650  117.6596    -0.1946     0.0        -1.0         0.0
2020-02-28  107.990  104.26  116.2130  117.2636    -1.0506     0.0         0.0        -1.0
2020-04-13  105.980  104.85   98.8890   97.8424     1.0466     1.0         1.0         0.0
2020-04-14  109.785  109.00  100.1645   98.1686     1.9959     1.0         0.0         1.0

List the signal change and entry/exit points for REGN
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  348.30  346.33  329.406  313.9972    15.4088     1.0         1.0         0.0
2019-11-14  338.39  349.80  332.617  315.5984    17.0186     1.0         0.0         1.0
2020-01-24  345.28  359.91  373.495  374.2328    -0.7378     0.0        -1.0         0.0
2020-01-27  339.42  341.20  369.296  372.9552    -3.6592     0.0         0.0        -1.0
2020-02-12  406.30  398.13  370.438  369.1188     1.3192     1.0         1.0         0.0
2020-02-13  398.81  406.44  376.701  369.7744     6.9266     1.0         0.0         1.0
2020-03-27  449.52  446.03  458.256  459.9348    -1.6788     0.0        -1.0         0.0
2020-03-30  473.00  463.09  461.473  461.8396    -0.3666     0.0         0.0        -1.0
2020-04-06  504.27  503.38  473.541  471.4428     2.0982     1.0         1.0         0.0
2020-04-07  501.51  502.81  478.739  473.0412     5.6978     1.0         0.0         1.0

List the signal change and entry/exit points for RMD
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  145.28  143.82  144.981  138.3496     6.6314     1.0         1.0         0.0
2019-11-14  145.42  145.46  144.731  138.9476     5.7834     1.0         0.0         1.0
2020-03-03  165.24  168.68  168.373  168.9424    -0.5694     0.0        -1.0         0.0
2020-03-04  174.82  168.30  168.193  169.4032    -1.2102     0.0         0.0        -1.0
2020-04-08  155.16  155.01  150.250  147.5472     2.7028     1.0         1.0         0.0
2020-04-09  159.82  150.49  151.580  147.1100     4.4700     1.0         0.0         1.0
2020-05-08  162.75  161.91  158.926  159.1592    -0.2332     0.0        -1.0         0.0
2020-05-11  169.28  160.96  159.577  159.8116    -0.2346     0.0         0.0        -1.0
2020-05-12  167.15  170.50  160.470  160.1656     0.3044     1.0         1.0         0.0
2020-05-13  164.37  166.26  161.276  160.5932     0.6828     1.0         0.0         1.0

List the signal change and entry/exit points for RNG
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  168.02  167.85  166.023  164.8996     1.1234     1.0         1.0         0.0
2019-11-14  169.82  167.55  166.853  164.7144     2.1386     1.0         0.0         1.0
2019-12-09  165.82  167.75  168.134  168.4412    -0.3072     0.0        -1.0         0.0
2019-12-10  165.56  167.00  167.657  168.7576    -1.1006     0.0         0.0        -1.0
2019-12-27  168.97  169.50  167.414  167.3116     0.1024     1.0         1.0         0.0
2019-12-30  166.78  168.64  167.717  167.1928     0.5242     1.0         0.0         1.0
2020-03-10  213.87  211.66  227.055  228.0904    -1.0354     0.0        -1.0         0.0
2020-03-11  199.34  209.05  223.496  227.6980    -4.2020     0.0         0.0        -1.0
2020-04-01  210.67  204.34  206.250  204.7480     1.5020     1.0         1.0         0.0
2020-04-02  220.03  210.67  209.830  204.1200     5.7100     1.0         0.0         1.0

List the signal change and entry/exit points for SHOP
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-21  316.07  317.50  311.804  310.4324     1.3716     1.0         1.0         0.0
2019-11-22  314.52  318.76  313.492  310.4396     3.0524     1.0         0.0         1.0
2020-03-03  476.94  501.48  489.507  491.0124    -1.5054     0.0        -1.0         0.0
2020-03-04  512.23  489.00  486.409  492.7952    -6.3862     0.0         0.0        -1.0
2020-04-06  392.65  380.00  407.421  406.4592     0.9618     1.0         1.0         0.0
2020-04-07  378.54  408.99  402.275  402.5232    -0.2482     0.0        -1.0         1.0
2020-04-08  414.51  383.00  399.066  398.6144     0.4516     1.0         1.0        -1.0
2020-04-09  417.74  422.51  396.099  395.3952     0.7038     1.0         0.0         1.0

List the signal change and entry/exit points for SJM
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  106.27  105.54  106.036  105.9344     0.1016     1.0         1.0         0.0
2019-12-05  106.75  106.35  106.166  105.9508     0.2152     1.0         0.0         1.0
2019-12-13  101.51  102.64  105.322  105.4396    -0.1176     0.0        -1.0         0.0
2019-12-16  102.64  101.94  105.016  105.2944    -0.2784     0.0         0.0        -1.0
2020-01-15  104.55  104.61  103.587  103.4660     0.1210     1.0         1.0         0.0
2020-01-16  104.99  104.75  103.872  103.4232     0.4488     1.0         0.0         1.0
2020-03-06  109.99  108.35  108.128  108.2328    -0.1048     0.0        -1.0         0.0
2020-03-09  108.32  104.41  107.978  108.4212    -0.4432     0.0         0.0        -1.0
2020-03-18  118.86  114.94  109.187  108.8412     0.3458     1.0         1.0         0.0
2020-03-19  109.02  119.00  109.014  108.8232     0.1908     1.0         0.0         1.0
2020-03-20  104.17  107.15  108.432  108.6812    -0.2492     0.0        -1.0         0.0
2020-03-23   95.79  103.66  107.179  108.1128    -0.9338     0.0         0.0        -1.0
2020-03-30  110.63  104.30  107.300  107.1848     0.1152     1.0         1.0         0.0
2020-03-31  111.00  110.58  106.689  107.3148    -0.6258     0.0        -1.0         1.0
2020-04-01  109.60  108.69  105.763  107.3316    -1.5686     0.0         0.0        -1.0
2020-04-06  115.19  114.00  108.643  108.2092     0.4338     1.0         1.0         0.0
2020-04-07  113.88  115.21  109.458  108.5144     0.9436     1.0         0.0         1.0
2020-05-08  116.08  115.07  115.887  116.0284    -0.1414     0.0        -1.0         0.0
2020-05-11  116.90  116.20  115.492  116.2112    -0.7192     0.0         0.0        -1.0

List the signal change and entry/exit points for SNY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-22  46.52  46.53   46.123  46.0912     0.0318     1.0         1.0         0.0
2019-11-25  46.90  46.73   46.227  46.1296     0.0974     1.0         0.0         1.0
2020-01-24  48.73  49.54   50.563  50.5928    -0.0298     0.0        -1.0         0.0
2020-01-27  47.77  47.98   50.178  50.4888    -0.3108     0.0         0.0        -1.0
2020-02-13  50.00  49.93   50.037  50.0248     0.0122     1.0         1.0         0.0
2020-02-14  49.93  50.04   50.203  49.9756     0.2274     1.0         0.0         1.0
2020-03-02  48.74  47.43   49.490  49.5464    -0.0564     0.0        -1.0         0.0
2020-03-03  47.71  48.49   49.147  49.5440    -0.3970     0.0         0.0        -1.0
2020-04-07  44.60  45.73   43.714  43.6396     0.0744     1.0         1.0         0.0
2020-04-08  45.18  44.63   44.095  43.4252     0.6698     1.0         0.0         1.0
2020-05-19  47.20  47.63   48.034  48.1308    -0.0968     0.0        -1.0         0.0
2020-05-20  47.74  48.01   47.873  48.2344    -0.3614     0.0         0.0        -1.0

List the signal change and entry/exit points for SPGI
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  258.62  255.07  255.742  252.8248     2.9172     1.0         1.0         0.0
2019-11-14  260.00  258.23  255.943  253.1860     2.7570     1.0         0.0         1.0
2020-02-27  267.15  276.85  294.634  295.7416    -1.1076     0.0        -1.0         0.0
2020-02-28  265.91  260.22  291.090  294.4904    -3.4004     0.0         0.0        -1.0
2020-04-06  255.83  248.23  239.289  239.2676     0.0214     1.0         1.0         0.0
2020-04-07  256.06  264.86  243.029  238.3044     4.7246     1.0         0.0         1.0

List the signal change and entry/exit points for SPLK
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  124.72  124.87  123.305  119.3940     3.9110     1.0         1.0         0.0
2019-11-14  116.99  120.99  123.008  119.3476     3.6604     1.0         0.0         1.0
2020-03-02  152.02  151.05  160.593  162.0002    -1.4072     0.0        -1.0         0.0
2020-03-03  148.50  152.12  158.155  161.7966    -3.6416     0.0         0.0        -1.0
2020-04-08  125.05  121.28  118.813  118.1860     0.6270     1.0         1.0         0.0
2020-04-09  123.13  125.99  118.212  117.4612     0.7508     1.0         0.0         1.0

List the signal change and entry/exit points for SPOT
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  146.78  145.49  148.004  132.1172    15.8868     1.0         1.0         0.0
2019-11-14  148.76  147.40  148.450  133.5668    14.8832     1.0         0.0         1.0
2019-11-27  142.93  143.08  142.011  142.2524    -0.2414     0.0        -1.0         0.0
2019-11-29  142.55  142.00  141.390  143.2012    -1.8112     0.0         0.0        -1.0
2019-12-10  145.97  145.86  144.772  144.6296     0.1424     1.0         1.0         0.0
2019-12-11  147.13  144.96  145.102  144.5000     0.6020     1.0         0.0         1.0
2020-01-23  148.97  148.00  151.272  151.9216    -0.6496     0.0        -1.0         0.0
2020-01-24  146.63  149.35  150.161  151.7256    -1.5646     0.0         0.0        -1.0
2020-02-14  141.00  142.72  148.041  147.8496     0.1914     1.0         1.0         0.0
2020-02-18  144.63  141.50  147.854  147.3932     0.4608     1.0         0.0         1.0
2020-02-19  143.36  145.57  146.759  147.0928    -0.3338     0.0        -1.0         0.0
2020-02-20  147.86  143.35  146.845  147.0312    -0.1862     0.0         0.0        -1.0
2020-04-14  135.93  132.05  126.087  126.0200     0.0670     1.0         1.0         0.0
2020-04-15  138.78  134.17  127.821  125.8952     1.9258     1.0         0.0         1.0

List the signal change and entry/exit points for SQ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  61.51  61.30   62.251  61.9748     0.2762     1.0         1.0         0.0
2019-11-14  62.99  61.65   62.407  62.0132     0.3938     1.0         0.0         1.0
2019-12-18  65.14  65.91   66.165  66.5184    -0.3534     0.0        -1.0         0.0
2019-12-19  64.55  64.90   65.906  66.6400    -0.7340     0.0         0.0        -1.0
2020-01-14  68.17  68.99   65.690  65.1200     0.5700     1.0         1.0         0.0
2020-01-15  70.36  68.54   66.470  65.2520     1.2180     1.0         0.0         1.0
2020-03-05  76.32  77.78   79.507  79.9376    -0.4306     0.0        -1.0         0.0
2020-03-06  73.09  75.03   78.467  79.8172    -1.3502     0.0         0.0        -1.0
2020-04-13  59.42  60.10   52.019  51.1444     0.8746     1.0         1.0         0.0
2020-04-14  62.41  60.02   52.760  51.0116     1.7484     1.0         0.0         1.0

List the signal change and entry/exit points for TDOC
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13   79.71   80.03   79.765   73.3592     6.4058     1.0         1.0         0.0
2019-11-14   78.89   80.06   79.994   73.7944     6.1996     1.0         0.0         1.0
2019-12-11   77.48   78.17   80.029   80.1528    -0.1238     0.0        -1.0         0.0
2019-12-12   77.05   77.22   79.146   80.0348    -0.8888     0.0         0.0        -1.0
2019-12-26   82.52   82.93   80.375   80.3732     0.0018     1.0         1.0         0.0
2019-12-27   83.35   83.00   81.005   80.6092     0.3958     1.0         0.0         1.0
2020-05-26  164.47  173.25  176.888  177.9716    -1.0836     0.0        -1.0         0.0
2020-05-27  162.64  158.42  174.737  177.5816    -2.8446     0.0         0.0        -1.0

List the signal change and entry/exit points for TGT
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-18  111.96  113.83  110.497  110.4756     0.0214     1.0         1.0         0.0
2019-11-19  110.85  110.41  110.576  110.4340     0.1420     1.0         0.0         1.0
2020-01-08  123.40  124.05  126.536  126.6000    -0.0640     0.0        -1.0         0.0
2020-01-09  123.50  123.50  126.031  126.5784    -0.5474     0.0         0.0        -1.0
2020-02-18  117.83  116.95  116.405  116.1848     0.2202     1.0         1.0         0.0
2020-02-19  117.39  117.69  116.819  115.9256     0.8934     1.0         0.0         1.0
2020-02-27  105.62  108.38  114.718  114.8700    -0.1520     0.0        -1.0         0.0
2020-02-28  103.00  102.21  113.190  114.3688    -1.1788     0.0         0.0        -1.0
2020-04-14  108.38  108.49   99.283   98.9452     0.3378     1.0         1.0         0.0
2020-04-15  106.24  108.76  100.610   98.8616     1.7484     1.0         0.0         1.0

List the signal change and entry/exit points for TMO
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  300.02  294.81  297.126  292.0276     5.0984     1.0         1.0         0.0
2019-11-14  300.84  300.15  297.012  292.8348     4.1772     1.0         0.0         1.0
2020-02-04  325.96  321.84  328.457  329.3936    -0.9366     0.0        -1.0         0.0
2020-02-05  332.49  330.26  327.701  329.6916    -1.9906     0.0         0.0        -1.0
2020-02-18  337.37  338.13  333.510  332.2768     1.2332     1.0         1.0         0.0
2020-02-19  339.74  338.09  334.888  332.5856     2.3024     1.0         0.0         1.0
2020-02-27  297.08  304.00  326.191  328.1368    -1.9458     0.0        -1.0         0.0
2020-02-28  290.80  288.61  321.712  326.3536    -4.6416     0.0         0.0        -1.0
2020-04-09  317.38  307.55  291.297  289.2408     2.0562     1.0         1.0         0.0
2020-04-13  315.32  314.38  295.395  289.4068     5.9882     1.0         0.0         1.0

List the signal change and entry/exit points for TTD
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  228.85  222.58  205.873  202.3012     3.5718     1.0         1.0         0.0
2019-11-14  228.08  228.00  208.601  203.9984     4.6026     1.0         0.0         1.0
2020-03-02  288.11  295.51  288.621  288.9984    -0.3774     0.0        -1.0         0.0
2020-03-03  277.67  286.35  285.544  289.1760    -3.6320     0.0         0.0        -1.0
2020-04-13  218.62  215.35  190.910  190.6640     0.2460     1.0         1.0         0.0
2020-04-14  233.41  231.87  194.500  191.3388     3.1612     1.0         0.0         1.0

List the signal change and entry/exit points for TTWO
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-21  122.54  123.07  121.473  121.0876     0.3854     1.0         1.0         0.0
2019-11-22  119.48  122.20  121.725  120.9576     0.7674     1.0         0.0         1.0
2020-02-05  120.76  122.45  125.341  126.1228    -0.7818     0.0        -1.0         0.0
2020-02-06  127.74  121.05  125.208  126.3352    -1.1272     0.0         0.0        -1.0
2020-03-11  119.05  116.44  114.466  114.4160     0.0500     1.0         1.0         0.0
2020-03-12  108.36  112.00  114.518  113.9200     0.5980     1.0         0.0         1.0
2020-03-20  100.15  108.52  111.427  112.4908    -1.0638     0.0        -1.0         0.0
2020-03-23  109.82  102.22  111.021  112.3464    -1.3254     0.0         0.0        -1.0
2020-04-03  118.49  119.34  115.016  113.6836     1.3324     1.0         1.0         0.0
2020-04-06  121.29  120.65  116.163  114.0528     2.1102     1.0         0.0         1.0

List the signal change and entry/exit points for TW
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  43.33  42.89   41.828  41.5608     0.2672     1.0         1.0         0.0
2019-11-14  42.76  43.34   41.929  41.6292     0.2998     1.0         0.0         1.0
2020-01-16  45.66  45.90   46.010  46.1124    -0.1024     0.0        -1.0         0.0
2020-01-17  45.75  45.73   45.918  46.1352    -0.2172     0.0         0.0        -1.0
2020-02-12  46.89  46.18   45.765  45.5692     0.1958     1.0         1.0         0.0
2020-02-13  47.32  46.95   46.002  45.6144     0.3876     1.0         0.0         1.0
2020-03-13  43.40  43.48   48.634  48.6650    -0.0310     0.0        -1.0         0.0
2020-03-16  38.87  39.63   47.495  48.4206    -0.9256     0.0         0.0        -1.0
2020-04-07  48.25  48.78   44.056  43.8488     0.2072     1.0         1.0         0.0
2020-04-08  49.28  48.88   44.823  43.7520     1.0710     1.0         0.0         1.0

List the signal change and entry/exit points for TWLO
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-22  104.29  103.80  100.347   99.8196     0.5274     1.0         1.0         0.0
2019-11-25  103.36  105.00  101.066   99.7324     1.3336     1.0         0.0         1.0
2019-12-12   96.86   96.20   98.466   99.2548    -0.7888     0.0        -1.0         0.0
2019-12-13   97.98   97.01   97.936   99.5316    -1.5956     0.0         0.0        -1.0
2019-12-31   98.28   96.81   99.621   99.4660     0.1550     1.0         1.0         0.0
2020-01-02  103.15  100.01  100.177   99.4576     0.7194     1.0         0.0         1.0
2020-02-26  112.96  113.11  123.172  123.5084    -0.3364     0.0        -1.0         0.0
2020-02-27  110.91  107.52  121.671  123.1800    -1.5090     0.0         0.0        -1.0
2020-04-02   83.32   83.79   92.030   91.9736     0.0564     1.0         1.0         0.0
2020-04-03   80.69   82.58   91.685   90.6956     0.9894     1.0         0.0         1.0

List the signal change and entry/exit points for UNH
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  253.57  254.87  253.332  245.9624     7.3696     1.0         1.0         0.0
2019-11-14  255.83  253.80  253.645  247.2464     6.3986     1.0         0.0         1.0
2020-01-30  280.98  281.84  292.644  292.7824    -0.1384     0.0        -1.0         0.0
2020-01-31  272.45  278.17  289.815  291.8988    -2.0838     0.0         0.0        -1.0
2020-02-14  298.78  302.21  291.455  291.1628     0.2922     1.0         1.0         0.0
2020-02-18  302.14  299.67  294.267  291.4432     2.8238     1.0         0.0         1.0
2020-02-27  253.92  258.42  287.009  287.2888    -0.2798     0.0        -1.0         0.0
2020-02-28  254.96  246.20  282.285  285.5088    -3.2238     0.0         0.0        -1.0
2020-04-08  267.83  247.69  246.996  246.0928     0.9032     1.0         1.0         0.0
2020-04-09  264.13  265.00  247.870  245.3396     2.5304     1.0         0.0         1.0

List the signal change and entry/exit points for VEEV
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-19  152.24  152.51  147.117  145.8616     1.2554     1.0         1.0         0.0
2019-11-20  154.33  152.25  148.465  146.0396     2.4254     1.0         0.0         1.0
2019-12-10  142.90  143.71  147.367  148.0292    -0.6622     0.0        -1.0         0.0
2019-12-11  142.24  143.50  145.668  148.0916    -2.4236     0.0         0.0        -1.0
2020-01-13  148.66  148.69  143.247  143.2164     0.0306     1.0         1.0         0.0
2020-01-14  147.78  149.22  143.934  143.3408     0.5932     1.0         0.0         1.0
2020-03-03  141.50  144.00  151.210  151.7496    -0.5396     0.0        -1.0         0.0
2020-03-04  144.12  149.00  149.233  151.6948    -2.4618     0.0         0.0        -1.0
2020-03-31  156.37  156.87  143.981  142.0532     1.9278     1.0         1.0         0.0
2020-04-01  153.51  150.34  145.279  142.2940     2.9850     1.0         0.0         1.0

List the signal change and entry/exit points for VZ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  60.53  60.02   59.908  59.8500     0.0580     1.0         1.0         0.0
2019-12-05  60.82  60.63   60.042  59.8500     0.1920     1.0         0.0         1.0
2020-01-07  59.60  60.10   60.943  60.9528    -0.0098     0.0        -1.0         0.0
2020-01-08  59.71  59.67   60.774  60.9428    -0.1688     0.0         0.0        -1.0
2020-04-07  56.98  57.04   54.130  54.0536     0.0764     1.0         1.0         0.0
2020-04-08  57.80  57.26   54.916  54.0408     0.8752     1.0         0.0         1.0
2020-05-07  55.58  56.10   56.994  57.0880    -0.0940     0.0        -1.0         0.0
2020-05-08  57.00  56.22   56.901  57.1580    -0.2570     0.0         0.0        -1.0

List the signal change and entry/exit points for WING
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-04  79.09  79.28   77.480  77.3018     0.1782     1.0         1.0         0.0
2019-12-05  80.19  79.23   78.200  77.1110     1.0890     1.0         0.0         1.0
2020-03-02  84.80  84.70   93.709  94.6292    -0.9202     0.0        -1.0         0.0
2020-03-03  81.85  84.74   91.731  94.2268    -2.4958     0.0         0.0        -1.0
2020-04-02  79.55  78.14   73.799  72.7424     1.0566     1.0         1.0         0.0
2020-04-03  77.65  79.78   75.916  72.4704     3.4456     1.0         0.0         1.0

List the signal change and entry/exit points for WIX
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13  135.70  132.04  128.2600  124.4632     3.7968     1.0         1.0         0.0
2019-11-14  125.20  128.10  128.5730  124.4812     4.0918     1.0         0.0         1.0
2019-11-27  122.00  121.30  124.1670  125.4520    -1.2850     0.0        -1.0         0.0
2019-11-29  120.89  121.98  123.7360  125.4896    -1.7536     0.0         0.0        -1.0
2020-01-02  127.55  123.21  120.8825  120.3850     0.4975     1.0         1.0         0.0
2020-01-03  128.92  126.14  121.9005  120.7006     1.1999     1.0         0.0         1.0
2020-02-26  132.50  133.80  142.3660  143.1908    -0.8248     0.0        -1.0         0.0
2020-02-27  134.12  129.38  141.2780  142.9552    -1.6772     0.0         0.0        -1.0
2020-04-14  123.34  123.14  106.5670  105.0388     1.5282     1.0         1.0         0.0
2020-04-15  118.41  120.41  108.3260  104.9392     3.3868     1.0         0.0         1.0

List the signal change and entry/exit points for WMT
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-14  120.65  124.60  119.301  119.1556     0.1454     1.0         1.0         0.0
2019-11-15  118.87  120.68  119.426  119.1008     0.3252     1.0         0.0         1.0
2019-12-04  118.69  119.12  119.095  119.1332    -0.0382     0.0        -1.0         0.0
2019-12-05  118.66  118.36  119.048  119.1556    -0.1076     0.0         0.0        -1.0
2019-12-17  121.28  120.95  119.650  119.5408     0.1092     1.0         1.0         0.0
2019-12-18  119.86  121.51  119.767  119.5704     0.1966     1.0         0.0         1.0
2020-01-03  117.89  118.27  119.309  119.4100    -0.1010     0.0        -1.0         0.0
2020-01-06  117.65  117.40  119.066  119.3656    -0.2996     0.0         0.0        -1.0
2020-02-14  117.89  117.67  116.094  115.8724     0.2216     1.0         1.0         0.0
2020-02-18  119.63  118.47  116.630  116.0024     0.6276     1.0         0.0         1.0
2020-02-28  107.68  107.69  115.404  115.6352    -0.2312     0.0        -1.0         0.0
2020-03-02  115.88  107.60  115.203  115.6956    -0.4926     0.0         0.0        -1.0
2020-03-26  109.82  109.40  114.465  114.3976     0.0674     1.0         1.0         0.0
2020-03-27  109.58  110.11  114.013  114.0376    -0.0246     0.0        -1.0         1.0
2020-03-30  115.19  111.86  114.856  113.9924     0.8636     1.0         1.0        -1.0
2020-03-31  113.62  114.31  114.292  113.9616     0.3304     1.0         0.0         1.0
2020-04-01  114.14  112.15  113.448  113.9760    -0.5280     0.0        -1.0         0.0
2020-04-02  118.65  113.18  113.368  114.3060    -0.9380     0.0         0.0        -1.0
2020-04-07  121.99  123.98  115.794  115.5488     0.2452     1.0         1.0         0.0
2020-04-08  121.84  123.69  117.038  115.7516     1.2864     1.0         0.0         1.0
2020-05-06  123.30  125.21  125.407  125.4480    -0.0410     0.0        -1.0         0.0
2020-05-07  121.89  123.46  124.743  125.7580    -1.0150     0.0         0.0        -1.0
2020-05-28  123.69  123.72  124.677  124.6732     0.0038     1.0         1.0         0.0

List the signal change and entry/exit points for WORK
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-22  21.17  21.00   21.484  21.4224     0.0616     1.0         1.0         0.0
2019-11-25  22.50  21.34   21.721  21.4192     0.3018     1.0         0.0         1.0
2019-12-17  20.71  21.53   21.735  21.8868    -0.1518     0.0        -1.0         0.0
2019-12-18  21.13  20.51   21.682  21.9040    -0.2220     0.0         0.0        -1.0
2020-01-03  22.46  22.50   21.979  21.9516     0.0274     1.0         1.0         0.0
2020-01-06  23.52  22.32   22.208  21.9876     0.2204     1.0         0.0         1.0
2020-01-24  20.59  21.47   22.262  22.3132    -0.0512     0.0        -1.0         0.0
2020-01-27  20.06  20.05   21.956  22.2704    -0.3144     0.0         0.0        -1.0
2020-02-11  25.98  24.55   22.787  22.4920     0.2950     1.0         1.0         0.0
2020-02-12  25.81  26.05   23.288  22.5712     0.7168     1.0         0.0         1.0
2020-03-12  21.35  21.74   25.868  26.2280    -0.3600     0.0        -1.0         0.0
2020-03-13  19.59  21.02   25.125  26.1056    -0.9806     0.0         0.0        -1.0
2020-03-31  26.84  28.36   24.994  24.7192     0.2748     1.0         1.0         0.0
2020-04-01  25.75  26.15   25.768  24.6848     1.0832     1.0         0.0         1.0

List the signal change and entry/exit points for ZM
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-13   68.01   68.00   68.518   67.6040     0.9140     1.0         1.0         0.0
2019-11-14   67.74   67.77   68.303   67.4732     0.8298     1.0         0.0         1.0
2019-12-11   63.52   64.24   68.393   69.3228    -0.9298     0.0        -1.0         0.0
2019-12-12   62.49   63.49   67.234   69.1492    -1.9152     0.0         0.0        -1.0
2020-01-06   70.32   66.63   67.478   67.1584     0.3196     1.0         1.0         0.0
2020-01-07   71.90   70.29   67.975   67.0544     0.9206     1.0         0.0         1.0
2020-04-16  150.26  149.92  130.877  131.0960    -0.2190     0.0        -1.0         0.0
2020-04-17  150.06  147.91  133.690  132.7196     0.9704     1.0         1.0        -1.0
2020-04-20  148.99  153.30  135.769  134.3804     1.3886     1.0         0.0         1.0

List the signal change and entry/exit points for ZS
            close    open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-11-14  45.32  44.830  44.3130  44.1458     0.1672     1.0         1.0         0.0
2019-11-15  45.83  45.600  44.3960  44.0542     0.3418     1.0         0.0         1.0
2019-12-17  46.52  46.130  46.7940  47.5144    -0.7204     0.0        -1.0         0.0
2019-12-18  47.24  46.620  46.5330  47.6132    -1.0802     0.0         0.0        -1.0
2020-01-08  50.75  48.140  47.9070  47.6904     0.2166     1.0         1.0         0.0
2020-01-09  54.00  51.160  48.5330  47.7384     0.7946     1.0         0.0         1.0
2020-02-27  49.74  49.990  57.6070  58.0180    -0.4110     0.0        -1.0         0.0
2020-02-28  51.99  48.145  56.6160  57.7252    -1.1092     0.0         0.0        -1.0
2020-03-26  60.55  60.290  52.6035  50.7782     1.8253     1.0         1.0         0.0
2020-03-27  58.63  59.540  54.2775  50.9430     3.3345     1.0         0.0         1.0

List the signal change and entry/exit points for ZTS
             close    open  fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-05  120.11  119.20  120.497  120.2856     0.2114     1.0         1.0         0.0
2019-12-06  121.72  121.00  120.647  120.0376     0.6094     1.0         0.0         1.0
2020-03-02  138.91  133.84  138.894  139.3132    -0.4192     0.0        -1.0         0.0
2020-03-03  137.24  139.46  138.253  139.3644    -1.1114     0.0         0.0        -1.0
2020-04-08  127.25  126.36  118.676  117.3460     1.3300     1.0         1.0         0.0
2020-04-09  128.75  126.55  119.760  116.9136     2.8464     1.0         0.0         1.0
2020-05-14  126.03  122.07  126.113  126.2144    -0.1014     0.0        -1.0         0.0
2020-05-15  127.49  126.44  126.109  126.1640    -0.0550     0.0         0.0        -1.0
2020-05-18  131.42  130.18  126.507  126.5028     0.0042     1.0         1.0         0.0
2020-05-19  134.34  131.05  126.811  126.7636     0.0474     1.0         0.0         1.0

In [33]:
for ticker in stock_list:
    graph_data = model_collection[ticker][:]
    fig = plt.figure(figsize=(16,9))
    ylabel = ticker + ' Price ($)'
    ax1 = fig.add_subplot(111, ylabel=ylabel)
    graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
    graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
    graph_data['close'].plot(ax=ax1, color='g', lw=2.)
    ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
    ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
    plt.legend()
    plt.show()
In [34]:
if notifyStatus: email_notify("Task 3. Develop Strategy and Train Model completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))

Task 4. Back-test Model

In [35]:
if notifyStatus: email_notify("Task 4. Back-test Model has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [36]:
def trading_portfolio_generation(ticker_symbol, initial_fund, trading_model):
    # Construct a portfolio to track the transactions and returns
    portfolio = pd.DataFrame(index=trading_model[ticker_symbol].index, columns=['trade_action', 'qty_onhand', 'cost_basis', 'sale_proceed', 'gain_loss', 'cash_value', 'position_value', 'total_value', 'accumu_return'])
    portfolio.iloc[0]['trade_action'] = 0
    portfolio.iloc[0]['qty_onhand'] = 0
    portfolio.iloc[0]['cost_basis'] = 0.00
    portfolio.iloc[0]['sale_proceed'] = 0.00
    portfolio.iloc[0]['gain_loss'] = 0.00
    portfolio.iloc[0]['cash_value'] = initial_fund
    portfolio.iloc[0]['position_value'] = 0.00
    portfolio.iloc[0]['total_value'] = initial_fund
    portfolio.iloc[0]['accumu_return'] = portfolio.iloc[0]['total_value'] - initial_fund

    # The conditional parameters below determine how the trading strategy will be carried out
    for i in range(1, len(portfolio)):
        if (trading_model[ticker_symbol].iloc[i]['entry_exit'] == 1) and (portfolio.iloc[i-1]['qty_onhand'] == 0):
            portfolio.iloc[i]['trade_action'] = 1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['sale_proceed'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value'] - portfolio.iloc[i]['cost_basis']
            recent_cost = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action']
            if verbose: print('BOUGHT QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model[ticker_symbol].iloc[i]['open'])
        elif (trading_model[ticker_symbol].iloc[i]['entry_exit'] == -1) and (portfolio.iloc[i-1]['qty_onhand'] > 0):
            portfolio.iloc[i]['trade_action'] = -1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = 0.00
            portfolio.iloc[i]['sale_proceed'] = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action'] * -1
            portfolio.iloc[i]['gain_loss'] = (recent_cost + (trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action'])) * -1
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value'] + portfolio.iloc[i]['sale_proceed']
            recent_cost = 0.00
            if verbose: print('SOLD QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model[ticker_symbol].iloc[i]['open'])
        else:
            portfolio.iloc[i]['trade_action'] = 0
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand']
            portfolio.iloc[i]['cost_basis'] = portfolio.iloc[i-1]['cost_basis']
            portfolio.iloc[i]['sale_proceed'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value']
        portfolio.iloc[i]['position_value'] = trading_model[ticker_symbol].iloc[i]['close'] * portfolio.iloc[i]['qty_onhand']
        portfolio.iloc[i]['total_value'] = portfolio.iloc[i]['cash_value'] + portfolio.iloc[i]['position_value']
        portfolio.iloc[i]['accumu_return'] = portfolio.iloc[i]['total_value'] - initial_fund

    return portfolio
In [37]:
initial_capital = 0
portfolio_collection = {}

stock_status = stock_meta.copy()
stock_status.drop(['Share_Outstanding'], axis=1, inplace=True)

for ticker in stock_list:
    print('Processing portfolio for ticker symbol:', ticker)
    portfolio_collection[ticker] = trading_portfolio_generation(ticker, initial_capital, model_collection)
    trade_transactions = portfolio_collection[ticker][portfolio_collection[ticker].trade_action != 0]
    print(trade_transactions)
    stock_status.loc[ticker, 'trading_pandl'] = portfolio_collection[ticker].accumu_return[-1]
    print('Accumulated profit/loss for one share of stock with initial capital of $%.0f at the end of modeling period: $%.2f' % (initial_capital, stock_status.loc[ticker, 'trading_pandl']))
    stock_status.loc[ticker, 'trading_return'] = portfolio_collection[ticker].accumu_return[-1] / trade_transactions.cost_basis[0]
    print('Accumulated return percentage based on the cost of first share of stock investment: %.2f%%\n' % (stock_status.loc[ticker, 'trading_return'] * 100))
    if trade_transactions.iloc[-1]['trade_action'] == 1:
        stock_status.loc[ticker, 'current_status'] = 'Holding Position'
        stock_status.loc[ticker, 'last_action_date'] = trade_transactions.index.tolist()[-1]
    else:
        stock_status.loc[ticker, 'current_status'] = 'Waiting to Enter'
        stock_status.loc[ticker, 'last_action_date'] = trade_transactions.index.tolist()[-1]
Processing portfolio for ticker symbol: AAPL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     263.75            0         0    -263.75         262.64       -1.11         -1.11
2020-02-26           -1          0          0       286.53     22.78      22.78              0       22.78         22.78
2020-04-14            1          1        280            0         0    -257.22         287.05       29.83         29.83
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $61.03
Accumulated return percentage based on the cost of first share of stock investment: 23.14%

Processing portfolio for ticker symbol: ABBV
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      86.48            0         0     -86.48          87.63        1.15          1.15
2019-12-16           -1          0          0        88.38       1.9        1.9              0         1.9           1.9
2019-12-18            1          1      90.05            0         0     -88.15          89.33        1.18          1.18
2020-01-21           -1          0          0        87.68     -2.37      -0.47              0       -0.47         -0.47
2020-02-13            1          1      96.85            0         0     -97.32          95.35       -1.97         -1.97
2020-03-06           -1          0          0        88.73     -8.12      -8.59              0       -8.59         -8.59
2020-04-14            1          1      80.62            0         0     -89.21          82.13       -7.08         -7.08
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $0.82
Accumulated return percentage based on the cost of first share of stock investment: 0.95%

Processing portfolio for ticker symbol: ABT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      84.09            0         0     -84.09          84.12        0.03          0.03
2020-01-14           -1          0          0        84.13      0.04       0.04              0        0.04          0.04
2020-01-22            1          1      90.78            0         0     -90.74          91.86        1.12          1.12
2020-02-14           -1          0          0        88.87     -1.91      -1.87              0       -1.87         -1.87
2020-02-18            1          1      89.42            0         0     -91.29          88.88       -2.41         -2.41
2020-02-21           -1          0          0        88.04     -1.38      -3.25              0       -3.25         -3.25
2020-04-08            1          1       82.5            0         0     -85.75          84.95        -0.8          -0.8
2020-05-15           -1          0          0        89.96      7.46       4.21              0        4.21          4.21
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $4.21
Accumulated return percentage based on the cost of first share of stock investment: 5.01%

Processing portfolio for ticker symbol: ADBE
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     293.54            0         0    -293.54         294.53        0.99          0.99
2020-03-03           -1          0          0       361.76     68.22      68.22              0       68.22         68.22
2020-04-13            1          1     315.94            0         0    -247.72         320.65       72.93         72.93
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $132.11
Accumulated return percentage based on the cost of first share of stock investment: 45.01%

Processing portfolio for ticker symbol: AKAM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-27            1          1      88.83            0         0     -88.83          87.29       -1.54         -1.54
2019-12-09           -1          0          0        84.95     -3.88      -3.88              0       -3.88         -3.88
2020-01-02            1          1      86.84            0         0     -90.72          87.64       -3.08         -3.08
2020-03-03           -1          0          0        90.53      3.69      -0.19              0       -0.19         -0.19
2020-03-31            1          1      92.89            0         0     -93.08          91.49       -1.59         -1.59
2020-05-08           -1          0          0       101.52      8.63       8.44              0        8.44          8.44
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $8.44
Accumulated return percentage based on the cost of first share of stock investment: 9.50%

Processing portfolio for ticker symbol: AMD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      37.51            0         0     -37.51          38.35        0.84          0.84
2020-02-07           -1          0          0        48.91      11.4       11.4              0        11.4          11.4
2020-02-13            1          1      53.43            0         0     -42.03          54.53        12.5          12.5
2020-03-04           -1          0          0        48.25     -5.18       6.22              0        6.22          6.22
2020-04-03            1          1       44.3            0         0     -38.08          42.59        4.51          4.51
2020-05-12           -1          0          0       56.186    11.886     18.106              0      18.106        18.106
2020-05-22            1          1      54.77            0         0    -36.664          55.17      18.506        18.506
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $15.08
Accumulated return percentage based on the cost of first share of stock investment: 40.19%

Processing portfolio for ticker symbol: AMT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-27            1          1      214.8            0         0     -214.8         214.91        0.11          0.11
2019-12-16           -1          0          0          213      -1.8       -1.8              0        -1.8          -1.8
2019-12-20            1          1      226.8            0         0     -228.6         227.74       -0.86         -0.86
2020-03-04           -1          0          0       245.58     18.78      16.98              0       16.98         16.98
2020-04-09            1          1      248.5            0         0    -231.52          259.6       28.08         28.08
2020-05-07           -1          0          0       239.18     -9.32       7.66              0        7.66          7.66
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $7.66
Accumulated return percentage based on the cost of first share of stock investment: 3.57%

Processing portfolio for ticker symbol: AMZN
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1    1751.43            0         0   -1751.43         1754.6        3.17          3.17
2019-11-19           -1          0          0      1756.99      5.56       5.56              0        5.56          5.56
2019-12-09            1          1    1750.66            0         0    -1745.1        1749.51        4.41          4.41
2019-12-13           -1          0          0         1765     14.34       19.9              0        19.9          19.9
2019-12-20            1          1    1799.62            0         0   -1779.72         1786.5        6.78          6.78
2020-01-30           -1          0          0         1858     58.38      78.28              0       78.28         78.28
2020-02-03            1          1     2010.6            0         0   -1932.32         2004.2       71.88         71.88
2020-03-04           -1          0          0      1946.57    -64.03      14.25              0       14.25         14.25
2020-03-31            1          1    1964.35            0         0    -1950.1        1949.72       -0.38         -0.38
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $451.00
Accumulated return percentage based on the cost of first share of stock investment: 25.75%

Processing portfolio for ticker symbol: ATVI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-06            1          1      55.12            0         0     -55.12          55.21        0.09          0.09
2020-02-05           -1          0          0        60.14      5.02       5.02              0        5.02          5.02
2020-02-11            1          1      61.93            0         0     -56.91          61.19        4.28          4.28
2020-03-04           -1          0          0           60     -1.93       3.09              0        3.09          3.09
2020-04-07            1          1      62.53            0         0     -59.44          59.87        0.43          0.43
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $10.78
Accumulated return percentage based on the cost of first share of stock investment: 19.56%

Processing portfolio for ticker symbol: BAX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-22            1          1      82.03            0         0     -82.03          82.02       -0.01         -0.01
2020-02-28           -1          0          0        81.81     -0.22      -0.22              0       -0.22         -0.22
2020-04-08            1          1       83.1            0         0     -83.32          84.48        1.16          1.16
2020-05-12           -1          0          0        89.41      6.31       6.09              0        6.09          6.09
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.09
Accumulated return percentage based on the cost of first share of stock investment: 7.42%

Processing portfolio for ticker symbol: BNTX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      18.86            0         0     -18.86             19        0.14          0.14
2020-01-27           -1          0          0        33.24     14.38      14.38              0       14.38         14.38
2020-02-28            1          1       33.4            0         0     -19.02           35.1       16.08         16.08
2020-04-15           -1          0          0         40.9       7.5      21.88              0       21.88         21.88
2020-05-06            1          1      50.14            0         0     -28.26          47.78       19.52         19.52
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $18.61
Accumulated return percentage based on the cost of first share of stock investment: 98.67%

Processing portfolio for ticker symbol: BSX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      41.45            0         0     -41.45          41.57        0.12          0.12
2020-01-16           -1          0          0        42.71      1.26       1.26              0        1.26          1.26
2020-04-09            1          1      35.25            0         0     -33.99          36.83        2.84          2.84
2020-05-20           -1          0          0        35.92      0.67       1.93              0        1.93          1.93
2020-05-21            1          1      35.52            0         0     -33.59          34.79         1.2           1.2
2020-05-22           -1          0          0        35.57      0.05       1.98              0        1.98          1.98
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.98
Accumulated return percentage based on the cost of first share of stock investment: 4.78%

Processing portfolio for ticker symbol: BYND
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-08            1          1         86            0         0        -86          81.48       -4.52         -4.52
2020-02-14           -1          0          0          113        27         27              0          27            27
2020-02-20            1          1     126.08            0         0     -99.08         120.58        21.5          21.5
2020-03-02           -1          0          0           95    -31.08      -4.08              0       -4.08         -4.08
2020-04-15            1          1      76.71            0         0     -80.79           74.7       -6.09         -6.09
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $40.03
Accumulated return percentage based on the cost of first share of stock investment: 46.55%

Processing portfolio for ticker symbol: CAG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      28.26            0         0     -28.26          28.44        0.18          0.18
2019-12-19           -1          0          0        31.16       2.9        2.9              0         2.9           2.9
2019-12-20            1          1      33.67            0         0     -30.77          35.07         4.3           4.3
2020-01-22           -1          0          0        32.82     -0.85       2.05              0        2.05          2.05
2020-02-06            1          1       32.4            0         0     -30.35          32.09        1.74          1.74
2020-02-14           -1          0          0        32.63      0.23       2.28              0        2.28          2.28
2020-04-02            1          1      29.19            0         0     -26.91          29.93        3.02          3.02
2020-05-15           -1          0          0        34.11      4.92        7.2              0         7.2           7.2
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $7.20
Accumulated return percentage based on the cost of first share of stock investment: 25.48%

Processing portfolio for ticker symbol: CCI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-10            1          1     136.38            0         0    -136.38            134       -2.38         -2.38
2020-03-10           -1          0          0       153.61     17.23      17.23              0       17.23         17.23
2020-04-09            1          1     158.26            0         0    -141.03         164.14       23.11         23.11
2020-05-11           -1          0          0       155.83     -2.43       14.8              0        14.8          14.8
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $14.80
Accumulated return percentage based on the cost of first share of stock investment: 10.85%

Processing portfolio for ticker symbol: CHGG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      35.91            0         0     -35.91          36.52        0.61          0.61
2020-02-14           -1          0          0        39.96      4.05       4.05              0        4.05          4.05
2020-04-08            1          1      35.75            0         0      -31.7          36.84        5.14          5.14
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $28.77
Accumulated return percentage based on the cost of first share of stock investment: 80.12%

Processing portfolio for ticker symbol: CHWY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1      23.89            0         0     -23.89          24.33        0.44          0.44
2020-01-30           -1          0          0        28.17      4.28       4.28              0        4.28          4.28
2020-02-24            1          1       28.8            0         0     -24.52          30.84        6.32          6.32
2020-03-11           -1          0          0        26.72     -2.08        2.2              0         2.2           2.2
2020-03-26            1          1      30.89            0         0     -28.69          33.81        5.12          5.12
2020-05-12           -1          0          0        39.66      8.77      10.97              0       10.97         10.97
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $10.97
Accumulated return percentage based on the cost of first share of stock investment: 45.92%

Processing portfolio for ticker symbol: CL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-02            1          1         68            0         0        -68          67.57       -0.43         -0.43
2020-03-03           -1          0          0        72.55      4.55       4.55              0        4.55          4.55
2020-04-09            1          1      70.66            0         0     -66.11          69.91         3.8           3.8
2020-05-07           -1          0          0         68.9     -1.76       2.79              0        2.79          2.79
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $2.79
Accumulated return percentage based on the cost of first share of stock investment: 4.10%

Processing portfolio for ticker symbol: CLX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1      149.9            0         0     -149.9         150.79        0.89          0.89
2020-04-03           -1          0          0       178.31     28.41      28.41              0       28.41         28.41
2020-04-09            1          1     179.23            0         0    -150.82         184.21       33.39         33.39
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $54.14
Accumulated return percentage based on the cost of first share of stock investment: 36.12%

Processing portfolio for ticker symbol: CMG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-27            1          1     817.13            0         0    -817.13         816.75       -0.38         -0.38
2020-03-02           -1          0          0       779.52    -37.61     -37.61              0      -37.61        -37.61
2020-04-07            1          1        750            0         0    -787.61          704.3      -83.31        -83.31
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $207.48
Accumulated return percentage based on the cost of first share of stock investment: 25.39%

Processing portfolio for ticker symbol: CNC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      55.46            0         0     -55.46          54.65       -0.81         -0.81
2019-12-23           -1          0          0        62.29      6.83       6.83              0        6.83          6.83
2019-12-24            1          1         63            0         0     -56.17          63.23        7.06          7.06
2020-02-07           -1          0          0        64.43      1.43       8.26              0        8.26          8.26
2020-02-20            1          1       66.7            0         0     -58.44          65.73        7.29          7.29
2020-02-26           -1          0          0        55.84    -10.86       -2.6              0        -2.6          -2.6
2020-04-08            1          1      60.63            0         0     -63.23          65.15        1.92          1.92
2020-05-12           -1          0          0        68.38      7.75       5.15              0        5.15          5.15
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $5.15
Accumulated return percentage based on the cost of first share of stock investment: 9.29%

Processing portfolio for ticker symbol: COR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-16            1          1      115.8            0         0     -115.8         117.37        1.57          1.57
2020-02-13           -1          0          0       112.23     -3.57      -3.57              0       -3.57         -3.57
2020-04-06            1          1     113.79            0         0    -117.36         115.89       -1.47         -1.47
2020-05-27           -1          0          0       121.94      8.15       4.58              0        4.58          4.58
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $4.58
Accumulated return percentage based on the cost of first share of stock investment: 3.96%

Processing portfolio for ticker symbol: COST
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     304.39            0         0    -304.39         304.59         0.2           0.2
2019-12-04           -1          0          0       296.04     -8.35      -8.35              0       -8.35         -8.35
2020-01-14            1          1     299.25            0         0     -307.6         299.75       -7.85         -7.85
2020-03-03           -1          0          0      308.858     9.608      1.258              0       1.258         1.258
2020-04-14            1          1     302.75            0         0   -301.492         314.14      12.648        12.648
2020-05-11           -1          0          0       305.64      2.89      4.148              0       4.148         4.148
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $4.15
Accumulated return percentage based on the cost of first share of stock investment: 1.36%

Processing portfolio for ticker symbol: COUP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-20            1          1     148.16            0         0    -148.16          150.3        2.14          2.14
2019-12-18           -1          0          0       141.13     -7.03      -7.03              0       -7.03         -7.03
2020-01-03            1          1     150.54            0         0    -157.57         159.58        2.01          2.01
2020-02-06           -1          0          0       158.56      8.02       0.99              0        0.99          0.99
2020-02-24            1          1     154.01            0         0    -153.02         160.29        7.27          7.27
2020-03-02           -1          0          0       154.79      0.78       1.77              0        1.77          1.77
2020-03-31            1          1     146.28            0         0    -144.51         139.73       -4.78         -4.78
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $72.51
Accumulated return percentage based on the cost of first share of stock investment: 48.94%

Processing portfolio for ticker symbol: CPB
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-21            1          1      48.03            0         0     -48.03          46.84       -1.19         -1.19
2020-01-14           -1          0          0        47.74     -0.29      -0.29              0       -0.29         -0.29
2020-01-30            1          1      48.41            0         0      -48.7          49.03        0.33          0.33
2020-02-20           -1          0          0        47.72     -0.69      -0.98              0       -0.98         -0.98
2020-03-09            1          1      49.69            0         0     -50.67           50.2       -0.47         -0.47
2020-03-25           -1          0          0        43.13     -6.56      -7.54              0       -7.54         -7.54
2020-04-15            1          1      51.42            0         0     -58.96           50.5       -8.46         -8.46
2020-05-27           -1          0          0           47     -4.42     -11.96              0      -11.96        -11.96
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-11.96
Accumulated return percentage based on the cost of first share of stock investment: -24.90%

Processing portfolio for ticker symbol: CRM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     163.03            0         0    -163.03         163.05        0.02          0.02
2019-12-09           -1          0          0       157.38     -5.65      -5.65              0       -5.65         -5.65
2019-12-26            1          1      163.4            0         0    -169.05         164.51       -4.54         -4.54
2020-03-02           -1          0          0        172.2       8.8       3.15              0        3.15          3.15
2020-04-14            1          1     155.71            0         0    -152.56         157.71        5.15          5.15
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $28.54
Accumulated return percentage based on the cost of first share of stock investment: 17.51%

Processing portfolio for ticker symbol: CRWD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-19            1          1      57.45            0         0     -57.45             56       -1.45         -1.45
2019-12-13           -1          0          0         47.5     -9.95      -9.95              0       -9.95         -9.95
2020-01-09            1          1      56.95            0         0      -66.9          55.94      -10.96        -10.96
2020-03-02           -1          0          0         60.2      3.25       -6.7              0        -6.7          -6.7
2020-03-31            1          1      57.03            0         0     -63.73          55.68       -8.05         -8.05
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $15.77
Accumulated return percentage based on the cost of first share of stock investment: 27.45%

Processing portfolio for ticker symbol: CTXS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     111.46            0         0    -111.46         111.39       -0.07         -0.07
2019-12-11           -1          0          0       109.96      -1.5       -1.5              0        -1.5          -1.5
2020-01-07            1          1     112.51            0         0    -114.01         112.41        -1.6          -1.6
2020-02-21           -1          0          0       119.01       6.5          5              0           5             5
2020-03-18            1          1     122.64            0         0    -117.64          130.5       12.86         12.86
2020-05-07           -1          0          0       149.03     26.39      31.39              0       31.39         31.39
2020-05-11            1          1     151.89            0         0     -120.5         154.02       33.52         33.52
2020-05-21           -1          0          0       137.81    -14.08      17.31              0       17.31         17.31
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $17.31
Accumulated return percentage based on the cost of first share of stock investment: 15.53%

Processing portfolio for ticker symbol: D
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-26            1          1      83.35            0         0     -83.35          83.46        0.11          0.11
2019-12-12           -1          0          0        80.79     -2.56      -2.56              0       -2.56         -2.56
2020-01-02            1          1      82.88            0         0     -85.44          81.96       -3.48         -3.48
2020-03-05           -1          0          0        87.37      4.49       1.93              0        1.93          1.93
2020-04-14            1          1       81.6            0         0     -79.67          82.02        2.35          2.35
2020-05-11           -1          0          0         77.7      -3.9      -1.97              0       -1.97         -1.97
2020-05-19            1          1      79.44            0         0     -81.41          78.83       -2.58         -2.58
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $2.29
Accumulated return percentage based on the cost of first share of stock investment: 2.75%

Processing portfolio for ticker symbol: DDOG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      40.18            0         0     -40.18          41.37        1.19          1.19
2019-12-12           -1          0          0        35.45     -4.73      -4.73              0       -4.73         -4.73
2020-01-07            1          1      39.95            0         0     -44.68          40.06       -4.62         -4.62
2020-03-02           -1          0          0           45      5.05       0.32              0        0.32          0.32
2020-04-13            1          1      37.69            0         0     -37.37          37.87         0.5           0.5
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $29.76
Accumulated return percentage based on the cost of first share of stock investment: 74.07%

Processing portfolio for ticker symbol: DG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-02            1          1     156.95            0         0    -156.95         156.54       -0.41         -0.41
2020-01-10           -1          0          0       153.17     -3.78      -3.78              0       -3.78         -3.78
2020-01-24            1          1     154.92            0         0     -158.7         154.34       -4.36         -4.36
2020-02-05           -1          0          0        156.6      1.68       -2.1              0        -2.1          -2.1
2020-02-06            1          1     157.76            0         0    -159.86         155.47       -4.39         -4.39
2020-03-10           -1          0          0       162.63      4.87       2.77              0        2.77          2.77
2020-04-08            1          1     169.74            0         0    -166.97         169.22        2.25          2.25
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $17.14
Accumulated return percentage based on the cost of first share of stock investment: 10.92%

Processing portfolio for ticker symbol: DHR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-20            1          1     143.07            0         0    -143.07         142.96       -0.11         -0.11
2020-02-25           -1          0          0       157.73     14.66      14.66              0       14.66         14.66
2020-04-08            1          1     141.83            0         0    -127.17         145.13       17.96         17.96
2020-05-21           -1          0          0       158.17     16.34         31              0          31            31
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $31.00
Accumulated return percentage based on the cost of first share of stock investment: 21.67%

Processing portfolio for ticker symbol: DOCU
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1         68            0         0        -68          67.75       -0.25         -0.25
2020-01-22           -1          0          0         73.7       5.7        5.7              0         5.7           5.7
2020-02-03            1          1       79.1            0         0      -73.4          80.63        7.23          7.23
2020-03-10           -1          0          0           80       0.9        6.6              0         6.6           6.6
2020-04-01            1          1      90.82            0         0     -84.22          92.09        7.87          7.87
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $43.58
Accumulated return percentage based on the cost of first share of stock investment: 64.09%

Processing portfolio for ticker symbol: DPZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     278.69            0         0    -278.69         278.66       -0.03         -0.03
2020-01-15           -1          0          0       284.97      6.28       6.28              0        6.28          6.28
2020-02-20            1          1     362.03            0         0    -355.75         373.16       17.41         17.41
2020-03-18           -1          0          0       296.54    -65.49     -59.21              0      -59.21        -59.21
2020-04-02            1          1     330.22            0         0    -389.43         333.45      -55.98        -55.98
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-23.88
Accumulated return percentage based on the cost of first share of stock investment: -8.57%

Processing portfolio for ticker symbol: DXCM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     204.81            0         0    -204.81         202.81          -2            -2
2019-12-18           -1          0          0       216.83     12.02      12.02              0       12.02         12.02
2020-01-08            1          1     230.78            0         0    -218.76         233.23       14.47         14.47
2020-03-16           -1          0          0          215    -15.78      -3.76              0       -3.76         -3.76
2020-04-06            1          1     272.37            0         0    -276.13         269.31       -6.82         -6.82
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $85.70
Accumulated return percentage based on the cost of first share of stock investment: 41.84%

Processing portfolio for ticker symbol: EA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1       96.2            0         0      -96.2          97.54        1.34          1.34
2020-02-07           -1          0          0       109.17     12.97      12.97              0       12.97         12.97
2020-04-08            1          1     106.95            0         0     -93.98          106.8       12.82         12.82
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $27.37
Accumulated return percentage based on the cost of first share of stock investment: 28.45%

Processing portfolio for ticker symbol: EBAY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1      34.94            0         0     -34.94          34.79       -0.15         -0.15
2019-12-11           -1          0          0         34.7     -0.24      -0.24              0       -0.24         -0.24
2019-12-20            1          1      36.02            0         0     -36.26          36.19       -0.07         -0.07
2020-01-15           -1          0          0        35.43     -0.59      -0.83              0       -0.83         -0.83
2020-02-07            1          1      35.83            0         0     -36.66           36.2       -0.46         -0.46
2020-03-09           -1          0          0        34.02     -1.81      -2.64              0       -2.64         -2.64
2020-04-15            1          1      35.31            0         0     -37.95          36.19       -1.76         -1.76
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.28
Accumulated return percentage based on the cost of first share of stock investment: 17.97%

Processing portfolio for ticker symbol: EBS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1         55            0         0        -55          54.35       -0.65         -0.65
2019-11-19           -1          0          0        54.61     -0.39      -0.39              0       -0.39         -0.39
2020-01-02            1          1      54.27            0         0     -54.66             54       -0.66         -0.66
2020-03-05           -1          0          0        57.57       3.3       2.91              0        2.91          2.91
2020-04-08            1          1      60.22            0         0     -57.31          61.93        4.62          4.62
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $24.67
Accumulated return percentage based on the cost of first share of stock investment: 44.85%

Processing portfolio for ticker symbol: EQIX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-26            1          1     553.22            0         0    -553.22         554.68        1.46          1.46
2020-03-09           -1          0          0          571     17.78      17.78              0       17.78         17.78
2020-04-06            1          1     639.78            0         0       -622         652.22       30.22         30.22
2020-05-13           -1          0          0       663.48      23.7      41.48              0       41.48         41.48
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $41.48
Accumulated return percentage based on the cost of first share of stock investment: 7.50%

Processing portfolio for ticker symbol: ETSY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-06            1          1      41.28            0         0     -41.28          41.23       -0.05         -0.05
2019-12-16           -1          0          0        42.49      1.21       1.21              0        1.21          1.21
2019-12-23            1          1      44.31            0         0      -43.1          44.78        1.68          1.68
2020-03-18           -1          0          0        39.63     -4.68      -3.47              0       -3.47         -3.47
2020-04-14            1          1      55.76            0         0     -59.23          57.66       -1.57         -1.57
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $18.58
Accumulated return percentage based on the cost of first share of stock investment: 45.01%

Processing portfolio for ticker symbol: EVBG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      84.75            0         0     -84.75          83.82       -0.93         -0.93
2019-12-16           -1          0          0        81.08     -3.67      -3.67              0       -3.67         -3.67
2020-01-13            1          1      83.82            0         0     -87.49          84.96       -2.53         -2.53
2020-04-08           -1          0          0        98.85     15.03      11.36              0       11.36         11.36
2020-04-22            1          1      118.5            0         0    -107.14         122.05       14.91         14.91
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $29.59
Accumulated return percentage based on the cost of first share of stock investment: 34.91%

Processing portfolio for ticker symbol: GILD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-26            1          1      66.68            0         0     -66.68          67.28         0.6           0.6
2019-12-27           -1          0          0        66.38      -0.3       -0.3              0        -0.3          -0.3
2020-02-06            1          1      67.29            0         0     -67.59          68.21        0.62          0.62
2020-03-26           -1          0          0         69.9      2.61       2.31              0        2.31          2.31
2020-03-27            1          1      73.71            0         0      -71.4          72.85        1.45          1.45
2020-04-03           -1          0          0        77.41       3.7       6.01              0        6.01          6.01
2020-04-07            1          1       77.3            0         0     -71.29          74.67        3.38          3.38
2020-05-15           -1          0          0        76.47     -0.83       5.18              0        5.18          5.18
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $5.18
Accumulated return percentage based on the cost of first share of stock investment: 7.77%

Processing portfolio for ticker symbol: GIS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-15            1          1      52.51            0         0     -52.51          52.56        0.05          0.05
2019-12-17           -1          0          0        52.21      -0.3       -0.3              0        -0.3          -0.3
2020-01-02            1          1      53.63            0         0     -53.93          52.13        -1.8          -1.8
2020-01-06           -1          0          0        52.08     -1.55      -1.85              0       -1.85         -1.85
2020-01-17            1          1      53.91            0         0     -55.76          53.85       -1.91         -1.91
2020-02-07           -1          0          0        51.77     -2.14      -3.99              0       -3.99         -3.99
2020-02-25            1          1      53.68            0         0     -57.67          52.53       -5.14         -5.14
2020-03-02           -1          0          0        49.21     -4.47      -8.46              0       -8.46         -8.46
2020-03-16            1          1       49.4            0         0     -57.86          53.38       -4.48         -4.48
2020-03-26           -1          0          0        47.81     -1.59     -10.05              0      -10.05        -10.05
2020-04-08            1          1      56.09            0         0     -66.14          55.73      -10.41        -10.41
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.23
Accumulated return percentage based on the cost of first share of stock investment: -8.06%

Processing portfolio for ticker symbol: GOLD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-02            1          1      16.76            0         0     -16.76          16.89        0.13          0.13
2020-01-21           -1          0          0        17.96       1.2        1.2              0         1.2           1.2
2020-01-29            1          1      18.09            0         0     -16.89          18.37        1.48          1.48
2020-03-13           -1          0          0        17.45     -0.64       0.56              0        0.56          0.56
2020-04-03            1          1      19.74            0         0     -19.18          19.95        0.77          0.77
2020-05-27           -1          0          0        23.45      3.71       4.27              0        4.27          4.27
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $4.27
Accumulated return percentage based on the cost of first share of stock investment: 25.48%

Processing portfolio for ticker symbol: GOOG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     1297.5            0         0    -1297.5        1311.46       13.96         13.96
2020-02-28           -1          0          0       1277.5       -20        -20              0         -20           -20
2020-04-13            1          1    1209.18            0         0   -1229.18        1217.56      -11.62        -11.62
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $187.55
Accumulated return percentage based on the cost of first share of stock investment: 14.45%

Processing portfolio for ticker symbol: GSK
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1       43.8            0         0      -43.8          43.85        0.05          0.05
2019-11-25           -1          0          0        44.49      0.69       0.69              0        0.69          0.69
2019-12-04            1          1      44.51            0         0     -43.82          45.07        1.25          1.25
2020-01-17           -1          0          0        48.15      3.64       4.33              0        4.33          4.33
2020-01-21            1          1      47.66            0         0     -43.33           47.5        4.17          4.17
2020-02-06           -1          0          0        44.07     -3.59       0.74              0        0.74          0.74
2020-04-09            1          1      39.17            0         0     -38.43          38.88        0.45          0.45
2020-05-20           -1          0          0        41.87       2.7       3.44              0        3.44          3.44
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.44
Accumulated return percentage based on the cost of first share of stock investment: 7.85%

Processing portfolio for ticker symbol: HD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-27            1          1      221.2            0         0     -221.2         219.97       -1.23         -1.23
2020-03-03           -1          0          0       230.03      8.83       8.83              0        8.83          8.83
2020-04-13            1          1     200.45            0         0    -191.62         198.79        7.17          7.17
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $53.52
Accumulated return percentage based on the cost of first share of stock investment: 24.20%

Processing portfolio for ticker symbol: HRL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      42.22            0         0     -42.22          42.23        0.01          0.01
2020-01-02           -1          0          0        45.14      2.92       2.92              0        2.92          2.92
2020-01-21            1          1      46.34            0         0     -43.42          46.95        3.53          3.53
2020-02-26           -1          0          0        44.94      -1.4       1.52              0        1.52          1.52
2020-03-25            1          1      44.01            0         0     -42.49          41.94       -0.55         -0.55
2020-05-04           -1          0          0        46.55      2.54       4.06              0        4.06          4.06
2020-05-22            1          1      45.48            0         0     -41.42          46.93        5.51          5.51
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.46
Accumulated return percentage based on the cost of first share of stock investment: 15.30%

Processing portfolio for ticker symbol: JNJ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     131.03            0         0    -131.03         130.96       -0.07         -0.07
2020-02-25           -1          0          0       145.99     14.96      14.96              0       14.96         14.96
2020-04-09            1          1     144.01            0         0    -129.05         141.23       12.18         12.18
2020-05-14           -1          0          0       145.39      1.38      16.34              0       16.34         16.34
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $16.34
Accumulated return percentage based on the cost of first share of stock investment: 12.47%

Processing portfolio for ticker symbol: K
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      64.54            0         0     -64.54          64.05       -0.49         -0.49
2020-02-05           -1          0          0        68.82      4.28       4.28              0        4.28          4.28
2020-04-13            1          1      62.44            0         0     -58.16           62.8        4.64          4.64
2020-05-13           -1          0          0        63.57      1.13       5.41              0        5.41          5.41
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $5.41
Accumulated return percentage based on the cost of first share of stock investment: 8.38%

Processing portfolio for ticker symbol: KR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      27.02            0         0     -27.02          26.91       -0.11         -0.11
2020-01-16           -1          0          0        28.34      1.32       1.32              0        1.32          1.32
2020-02-19            1          1      29.97            0         0     -28.65          29.54        0.89          0.89
2020-04-02           -1          0          0        30.23      0.26       1.58              0        1.58          1.58
2020-04-14            1          1      32.05            0         0     -30.47          32.09        1.62          1.62
2020-05-27           -1          0          0        31.47     -0.58          1              0           1             1
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.00
Accumulated return percentage based on the cost of first share of stock investment: 3.70%

Processing portfolio for ticker symbol: LLY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     112.26            0         0    -112.26         111.39       -0.87         -0.87
2020-02-26           -1          0          0       136.03     23.77      23.77              0       23.77         23.77
2020-03-18            1          1     136.34            0         0    -112.57         143.09       30.52         30.52
2020-03-23           -1          0          0       120.95    -15.39       8.38              0        8.38          8.38
2020-04-07            1          1     143.13            0         0    -134.75         141.88        7.13          7.13
2020-05-21           -1          0          0       153.15     10.02       18.4              0        18.4          18.4
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $18.40
Accumulated return percentage based on the cost of first share of stock investment: 16.39%

Processing portfolio for ticker symbol: LOGI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      41.29            0         0     -41.29          41.37        0.08          0.08
2020-01-31           -1          0          0        45.37      4.08       4.08              0        4.08          4.08
2020-03-27            1          1      41.35            0         0     -37.27          41.12        3.85          3.85
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $19.73
Accumulated return percentage based on the cost of first share of stock investment: 47.78%

Processing portfolio for ticker symbol: LVGO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      26.76            0         0     -26.76          25.36        -1.4          -1.4
2019-12-16           -1          0          0        26.41     -0.35      -0.35              0       -0.35         -0.35
2020-01-15            1          1         31            0         0     -31.35           30.9       -0.45         -0.45
2020-02-04           -1          0          0           24        -7      -7.35              0       -7.35         -7.35
2020-02-24            1          1      26.35            0         0      -33.7          27.13       -6.57         -6.57
2020-03-10           -1          0          0         25.5     -0.85       -8.2              0        -8.2          -8.2
2020-04-06            1          1      30.15            0         0     -38.35          30.09       -8.26         -8.26
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $19.50
Accumulated return percentage based on the cost of first share of stock investment: 72.87%

Processing portfolio for ticker symbol: MASI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-20            1          1     153.15            0         0    -153.15         155.43        2.28          2.28
2020-03-03           -1          0          0       177.86     24.71      24.71              0       24.71         24.71
2020-03-16            1          1     174.84            0         0    -150.13         174.19       24.06         24.06
2020-03-20           -1          0          0          165     -9.84      14.87              0       14.87         14.87
2020-04-07            1          1     187.11            0         0    -172.24         183.26       11.02         11.02
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $62.12
Accumulated return percentage based on the cost of first share of stock investment: 40.56%

Processing portfolio for ticker symbol: MDLZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-25            1          1      51.85            0         0     -51.85          52.04        0.19          0.19
2020-01-15           -1          0          0        54.53      2.68       2.68              0        2.68          2.68
2020-01-23            1          1      55.35            0         0     -52.67          55.44        2.77          2.77
2020-03-03           -1          0          0        55.42      0.07       2.75              0        2.75          2.75
2020-04-09            1          1      51.79            0         0     -49.04          52.34         3.3           3.3
2020-05-04           -1          0          0        50.76     -1.03       1.72              0        1.72          1.72
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.72
Accumulated return percentage based on the cost of first share of stock investment: 3.32%

Processing portfolio for ticker symbol: MKC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-19            1          1     165.45            0         0    -165.45         165.96        0.51          0.51
2019-12-24           -1          0          0       167.36      1.91       1.91              0        1.91          1.91
2020-01-09            1          1     164.71            0         0     -162.8         162.24       -0.56         -0.56
2020-01-10           -1          0          0       161.72     -2.99      -1.08              0       -1.08         -1.08
2020-01-27            1          1     172.33            0         0    -173.41         172.71        -0.7          -0.7
2020-02-05           -1          0          0       161.65    -10.68     -11.76              0      -11.76        -11.76
2020-04-08            1          1     149.68            0         0    -161.44          149.1      -12.34        -12.34
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $11.07
Accumulated return percentage based on the cost of first share of stock investment: 6.69%

Processing portfolio for ticker symbol: MKTX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1        374            0         0       -374         379.22        5.22          5.22
2019-12-16           -1          0          0       374.64      0.64       0.64              0        0.64          0.64
2020-03-09            1          1     342.85            0         0    -342.21         352.31        10.1          10.1
2020-03-19           -1          0          0       303.56    -39.29     -38.65              0      -38.65        -38.65
2020-04-07            1          1     400.55            0         0     -439.2          381.5       -57.7         -57.7
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $44.31
Accumulated return percentage based on the cost of first share of stock investment: 11.85%

Processing portfolio for ticker symbol: MRNA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      18.16            0         0     -18.16          18.34        0.18          0.18
2019-12-17           -1          0          0        18.54      0.38       0.38              0        0.38          0.38
2020-01-06            1          1       18.7            0         0     -18.32          18.13       -0.19         -0.19
2020-01-07           -1          0          0        18.15     -0.55      -0.17              0       -0.17         -0.17
2020-01-17            1          1       21.5            0         0     -21.67          20.62       -1.05         -1.05
2020-02-18           -1          0          0        19.14     -2.36      -2.53              0       -2.53         -2.53
2020-03-02            1          1         27            0         0     -29.53          29.88        0.35          0.35
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $26.01
Accumulated return percentage based on the cost of first share of stock investment: 143.23%

Processing portfolio for ticker symbol: MRVL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      27.68            0         0     -27.68          26.99       -0.69         -0.69
2019-12-03           -1          0          0        24.94     -2.74      -2.74              0       -2.74         -2.74
2019-12-24            1          1       26.6            0         0     -29.34          26.55       -2.79         -2.79
2020-02-03           -1          0          0        24.31     -2.29      -5.03              0       -5.03         -5.03
2020-04-02            1          1      21.29            0         0     -26.32          22.65       -3.67         -3.67
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.65
Accumulated return percentage based on the cost of first share of stock investment: 13.19%

Processing portfolio for ticker symbol: MSFT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     147.02            0         0    -147.02         148.06        1.04          1.04
2020-03-02           -1          0          0       165.31     18.29      18.29              0       18.29         18.29
2020-04-07            1          1    169.592            0         0   -151.302         163.49      12.188        12.188
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $30.10
Accumulated return percentage based on the cost of first share of stock investment: 20.47%

Processing portfolio for ticker symbol: NET
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      16.12            0         0     -16.12          16.67        0.55          0.55
2019-12-19           -1          0          0         17.4      1.28       1.28              0        1.28          1.28
2020-01-15            1          1       18.7            0         0     -17.42          18.85        1.43          1.43
2020-02-07           -1          0          0        17.88     -0.82       0.46              0        0.46          0.46
2020-02-21            1          1       20.3            0         0     -19.84          21.02        1.18          1.18
2020-03-19           -1          0          0         19.8      -0.5      -0.04              0       -0.04         -0.04
2020-03-31            1          1      24.16            0         0      -24.2          23.48       -0.72         -0.72
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.90
Accumulated return percentage based on the cost of first share of stock investment: 24.19%

Processing portfolio for ticker symbol: NFLX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     283.25            0         0    -283.25         289.62        6.37          6.37
2019-12-16           -1          0          0       300.85      17.6       17.6              0        17.6          17.6
2019-12-20            1          1        335            0         0     -317.4          336.9        19.5          19.5
2020-03-09           -1          0          0       343.86      8.86      26.46              0       26.46         26.46
2020-04-02            1          1     364.08            0         0    -337.62         370.08       32.46         32.46
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $75.82
Accumulated return percentage based on the cost of first share of stock investment: 26.77%

Processing portfolio for ticker symbol: NVDA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     208.93            0         0    -208.93         209.79        0.86          0.86
2020-03-09           -1          0          0        239.9     30.97      30.97              0       30.97         30.97
2020-04-03            1          1     253.96            0         0    -222.99         243.91       20.92         20.92
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $116.49
Accumulated return percentage based on the cost of first share of stock investment: 55.76%

Processing portfolio for ticker symbol: OKTA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     116.71            0         0    -116.71         115.96       -0.75         -0.75
2019-12-16           -1          0          0       116.99      0.28       0.28              0        0.28          0.28
2020-01-08            1          1     123.31            0         0    -123.03         125.55        2.52          2.52
2020-03-02           -1          0          0       130.05      6.74       7.02              0        7.02          7.02
2020-04-02            1          1     119.43            0         0    -112.41         115.99        3.58          3.58
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $71.51
Accumulated return percentage based on the cost of first share of stock investment: 61.27%

Processing portfolio for ticker symbol: PANW
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     240.64            0         0    -240.64         245.51        4.87          4.87
2019-12-04           -1          0          0       227.04     -13.6      -13.6              0       -13.6         -13.6
2019-12-30            1          1     232.59            0         0    -246.19         231.43      -14.76        -14.76
2020-02-06           -1          0          0       242.57      9.98      -3.62              0       -3.62         -3.62
2020-02-12            1          1     247.39            0         0    -251.01         244.72       -6.29         -6.29
2020-02-26           -1          0          0       197.08    -50.31     -53.93              0      -53.93        -53.93
2020-04-06            1          1     169.36            0         0    -223.29         171.34      -51.95        -51.95
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.10
Accumulated return percentage based on the cost of first share of stock investment: 2.53%

Processing portfolio for ticker symbol: PEP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-03            1          1     136.66            0         0    -136.66         135.46        -1.2          -1.2
2020-01-08           -1          0          0       134.46      -2.2       -2.2              0        -2.2          -2.2
2020-01-22            1          1     141.81            0         0    -144.01         143.38       -0.63         -0.63
2020-03-02           -1          0          0          132     -9.81     -12.01              0      -12.01        -12.01
2020-04-09            1          1     132.09            0         0     -144.1         133.63      -10.47        -10.47
2020-05-11           -1          0          0       133.43      1.34     -10.67              0      -10.67        -10.67
2020-05-21            1          1     130.98            0         0    -141.65         130.21      -11.44        -11.44
2020-05-27           -1          0          0       129.72     -1.26     -11.93              0      -11.93        -11.93
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-11.93
Accumulated return percentage based on the cost of first share of stock investment: -8.73%

Processing portfolio for ticker symbol: PFE
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      36.56            0         0     -36.56          36.55       -0.01         -0.01
2019-11-19           -1          0          0        37.43      0.87       0.87              0        0.87          0.87
2019-11-26            1          1      38.55            0         0     -37.68          38.29        0.61          0.61
2020-02-03           -1          0          0        37.46     -1.09      -0.22              0       -0.22         -0.22
2020-04-08            1          1      33.99            0         0     -34.21           34.6        0.39          0.39
2020-05-28           -1          0          0        37.84      3.85       3.63              0        3.63          3.63
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.63
Accumulated return percentage based on the cost of first share of stock investment: 9.93%

Processing portfolio for ticker symbol: PG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-03            1          1     122.31            0         0    -122.31         122.95        0.64          0.64
2020-01-08           -1          0          0       122.19     -0.12      -0.12              0       -0.12         -0.12
2020-01-23            1          1      124.3            0         0    -124.42         124.99        0.57          0.57
2020-02-20           -1          0          0       125.47      1.17       1.05              0        1.05          1.05
2020-04-09            1          1     115.26            0         0    -114.21         114.66        0.45          0.45
2020-05-07           -1          0          0       114.06      -1.2      -0.15              0       -0.15         -0.15
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-0.15
Accumulated return percentage based on the cost of first share of stock investment: -0.12%

Processing portfolio for ticker symbol: PLD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-22            1          1      90.94            0         0     -90.94          90.56       -0.38         -0.38
2019-12-18           -1          0          0        87.05     -3.89      -3.89              0       -3.89         -3.89
2020-01-14            1          1      91.55            0         0     -95.44          90.63       -4.81         -4.81
2020-03-02           -1          0          0         84.7     -6.85     -10.74              0      -10.74        -10.74
2020-04-07            1          1      86.32            0         0     -97.06          80.95      -16.11        -16.11
2020-05-13           -1          0          0        83.56     -2.76      -13.5              0       -13.5         -13.5
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-13.50
Accumulated return percentage based on the cost of first share of stock investment: -14.84%

Processing portfolio for ticker symbol: PRGO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-09            1          1      52.01            0         0     -52.01          52.99        0.98          0.98
2020-01-06           -1          0          0        49.59     -2.42      -2.42              0       -2.42         -2.42
2020-01-21            1          1      58.77            0         0     -61.19          59.83       -1.36         -1.36
2020-02-28           -1          0          0        50.07      -8.7     -11.12              0      -11.12        -11.12
2020-04-13            1          1      50.56            0         0     -61.68          50.37      -11.31        -11.31
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-6.65
Accumulated return percentage based on the cost of first share of stock investment: -12.79%

Processing portfolio for ticker symbol: PTON
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1       26.2            0         0      -26.2          25.93       -0.27         -0.27
2019-12-24           -1          0          0        29.07      2.87       2.87              0        2.87          2.87
2020-01-22            1          1      32.32            0         0     -29.45          30.68        1.23          1.23
2020-02-14           -1          0          0        28.89     -3.43      -0.56              0       -0.56         -0.56
2020-03-31            1          1      27.89            0         0     -28.45          26.55        -1.9          -1.9
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $14.16
Accumulated return percentage based on the cost of first share of stock investment: 54.05%

Processing portfolio for ticker symbol: PYPL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-21            1          1        103            0         0       -103         102.55       -0.45         -0.45
2020-02-28           -1          0          0       104.26      1.26       1.26              0        1.26          1.26
2020-04-14            1          1        109            0         0    -107.74        109.785       2.045         2.045
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $41.05
Accumulated return percentage based on the cost of first share of stock investment: 39.85%

Processing portfolio for ticker symbol: REGN
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      349.8            0         0     -349.8         338.39      -11.41        -11.41
2020-01-27           -1          0          0        341.2      -8.6       -8.6              0        -8.6          -8.6
2020-02-13            1          1     406.44            0         0    -415.04         398.81      -16.23        -16.23
2020-03-30           -1          0          0       463.09     56.65      48.05              0       48.05         48.05
2020-04-07            1          1     502.81            0         0    -454.76         501.51       46.75         46.75
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $123.45
Accumulated return percentage based on the cost of first share of stock investment: 35.29%

Processing portfolio for ticker symbol: RMD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     145.46            0         0    -145.46         145.42       -0.04         -0.04
2020-03-04           -1          0          0        168.3     22.84      22.84              0       22.84         22.84
2020-04-09            1          1     150.49            0         0    -127.65         159.82       32.17         32.17
2020-05-11           -1          0          0       160.96     10.47      33.31              0       33.31         33.31
2020-05-13            1          1     166.26            0         0    -132.95         164.37       31.42         31.42
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $25.87
Accumulated return percentage based on the cost of first share of stock investment: 17.78%

Processing portfolio for ticker symbol: RNG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     167.55            0         0    -167.55         169.82        2.27          2.27
2019-12-10           -1          0          0          167     -0.55      -0.55              0       -0.55         -0.55
2019-12-30            1          1     168.64            0         0    -169.19         166.78       -2.41         -2.41
2020-03-11           -1          0          0       209.05     40.41      39.86              0       39.86         39.86
2020-04-02            1          1     210.67            0         0    -170.81         220.03       49.22         49.22
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $88.70
Accumulated return percentage based on the cost of first share of stock investment: 52.94%

Processing portfolio for ticker symbol: SHOP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-22            1          1     318.76            0         0    -318.76         314.52       -4.24         -4.24
2020-03-04           -1          0          0          489    170.24     170.24              0      170.24        170.24
2020-04-07            1          1     408.99            0         0    -238.75         378.54      139.79        139.79
2020-04-08           -1          0          0          383    -25.99     144.25              0      144.25        144.25
2020-04-09            1          1     422.51            0         0    -278.26         417.74      139.48        139.48
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $466.17
Accumulated return percentage based on the cost of first share of stock investment: 146.24%

Processing portfolio for ticker symbol: SJM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1     106.35            0         0    -106.35         106.75         0.4           0.4
2019-12-16           -1          0          0       101.94     -4.41      -4.41              0       -4.41         -4.41
2020-01-16            1          1     104.75            0         0    -109.16         104.99       -4.17         -4.17
2020-03-09           -1          0          0       104.41     -0.34      -4.75              0       -4.75         -4.75
2020-03-19            1          1        119            0         0    -123.75         109.02      -14.73        -14.73
2020-03-23           -1          0          0       103.66    -15.34     -20.09              0      -20.09        -20.09
2020-03-31            1          1     110.58            0         0    -130.67            111      -19.67        -19.67
2020-04-01           -1          0          0       108.69     -1.89     -21.98              0      -21.98        -21.98
2020-04-07            1          1     115.21            0         0    -137.19         113.88      -23.31        -23.31
2020-05-11           -1          0          0        116.2      0.99     -20.99              0      -20.99        -20.99
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-20.99
Accumulated return percentage based on the cost of first share of stock investment: -19.74%

Processing portfolio for ticker symbol: SNY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-25            1          1      46.73            0         0     -46.73           46.9        0.17          0.17
2020-01-27           -1          0          0        47.98      1.25       1.25              0        1.25          1.25
2020-02-14            1          1      50.04            0         0     -48.79          49.93        1.14          1.14
2020-03-03           -1          0          0        48.49     -1.55       -0.3              0        -0.3          -0.3
2020-04-08            1          1      44.63            0         0     -44.93          45.18        0.25          0.25
2020-05-20           -1          0          0        48.01      3.38       3.08              0        3.08          3.08
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.08
Accumulated return percentage based on the cost of first share of stock investment: 6.59%

Processing portfolio for ticker symbol: SPGI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     258.23            0         0    -258.23            260        1.77          1.77
2020-02-28           -1          0          0       260.22      1.99       1.99              0        1.99          1.99
2020-04-07            1          1     264.86            0         0    -262.87         256.06       -6.81         -6.81
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $55.93
Accumulated return percentage based on the cost of first share of stock investment: 21.66%

Processing portfolio for ticker symbol: SPLK
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     120.99            0         0    -120.99         116.99          -4            -4
2020-03-03           -1          0          0       152.12     31.13      31.13              0       31.13         31.13
2020-04-09            1          1     125.99            0         0     -94.86         123.13       28.27         28.27
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $85.14
Accumulated return percentage based on the cost of first share of stock investment: 70.37%

Processing portfolio for ticker symbol: SPOT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      147.4            0         0     -147.4         148.76        1.36          1.36
2019-11-29           -1          0          0          142      -5.4       -5.4              0        -5.4          -5.4
2019-12-11            1          1     144.96            0         0    -150.36         147.13       -3.23         -3.23
2020-01-24           -1          0          0       149.35      4.39      -1.01              0       -1.01         -1.01
2020-02-18            1          1      141.5            0         0    -142.51         144.63        2.12          2.12
2020-02-20           -1          0          0       143.35      1.85       0.84              0        0.84          0.84
2020-04-15            1          1     134.17            0         0    -133.33         138.78        5.45          5.45
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $43.89
Accumulated return percentage based on the cost of first share of stock investment: 29.78%

Processing portfolio for ticker symbol: SQ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      61.65            0         0     -61.65          62.99        1.34          1.34
2019-12-19           -1          0          0         64.9      3.25       3.25              0        3.25          3.25
2020-01-15            1          1      68.54            0         0     -65.29          70.36        5.07          5.07
2020-03-06           -1          0          0        75.03      6.49       9.74              0        9.74          9.74
2020-04-14            1          1      60.02            0         0     -50.28          62.41       12.13         12.13
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $29.34
Accumulated return percentage based on the cost of first share of stock investment: 47.59%

Processing portfolio for ticker symbol: TDOC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      80.06            0         0     -80.06          78.89       -1.17         -1.17
2019-12-12           -1          0          0        77.22     -2.84      -2.84              0       -2.84         -2.84
2019-12-27            1          1         83            0         0     -85.84          83.35       -2.49         -2.49
2020-05-27           -1          0          0       158.42     75.42      72.58              0       72.58         72.58
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $72.58
Accumulated return percentage based on the cost of first share of stock investment: 90.66%

Processing portfolio for ticker symbol: TGT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-19            1          1     110.41            0         0    -110.41         110.85        0.44          0.44
2020-01-09           -1          0          0        123.5     13.09      13.09              0       13.09         13.09
2020-02-19            1          1     117.69            0         0     -104.6         117.39       12.79         12.79
2020-02-28           -1          0          0       102.21    -15.48      -2.39              0       -2.39         -2.39
2020-04-15            1          1     108.76            0         0    -111.15         106.24       -4.91         -4.91
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $7.28
Accumulated return percentage based on the cost of first share of stock investment: 6.59%

Processing portfolio for ticker symbol: TMO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1     300.15            0         0    -300.15         300.84        0.69          0.69
2020-02-05           -1          0          0       330.26     30.11      30.11              0       30.11         30.11
2020-02-19            1          1     338.09            0         0    -307.98         339.74       31.76         31.76
2020-02-28           -1          0          0       288.61    -49.48     -19.37              0      -19.37        -19.37
2020-04-13            1          1     314.38            0         0    -333.75         315.32      -18.43        -18.43
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $8.99
Accumulated return percentage based on the cost of first share of stock investment: 3.00%

Processing portfolio for ticker symbol: TTD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1        228            0         0       -228         228.08        0.08          0.08
2020-03-03           -1          0          0       286.35     58.35      58.35              0       58.35         58.35
2020-04-14            1          1     231.87            0         0    -173.52         233.41       59.89         59.89
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $124.65
Accumulated return percentage based on the cost of first share of stock investment: 54.67%

Processing portfolio for ticker symbol: TTWO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-22            1          1      122.2            0         0     -122.2         119.48       -2.72         -2.72
2020-02-06           -1          0          0       121.05     -1.15      -1.15              0       -1.15         -1.15
2020-03-12            1          1        112            0         0    -113.15         108.36       -4.79         -4.79
2020-03-23           -1          0          0       102.22     -9.78     -10.93              0      -10.93        -10.93
2020-04-06            1          1     120.65            0         0    -131.58         121.29      -10.29        -10.29
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $2.49
Accumulated return percentage based on the cost of first share of stock investment: 2.04%

Processing portfolio for ticker symbol: TW
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      43.34            0         0     -43.34          42.76       -0.58         -0.58
2020-01-17           -1          0          0        45.73      2.39       2.39              0        2.39          2.39
2020-02-13            1          1      46.95            0         0     -44.56          47.32        2.76          2.76
2020-03-16           -1          0          0        39.63     -7.32      -4.93              0       -4.93         -4.93
2020-04-08            1          1      48.88            0         0     -53.81          49.28       -4.53         -4.53
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $9.15
Accumulated return percentage based on the cost of first share of stock investment: 21.11%

Processing portfolio for ticker symbol: TWLO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-25            1          1        105            0         0       -105         103.36       -1.64         -1.64
2019-12-13           -1          0          0        97.01     -7.99      -7.99              0       -7.99         -7.99
2020-01-02            1          1     100.01            0         0       -108         103.15       -4.85         -4.85
2020-02-27           -1          0          0       107.52      7.51      -0.48              0       -0.48         -0.48
2020-04-03            1          1      82.58            0         0     -83.06          80.69       -2.37         -2.37
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $108.34
Accumulated return percentage based on the cost of first share of stock investment: 103.18%

Processing portfolio for ticker symbol: UNH
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      253.8            0         0     -253.8         255.83        2.03          2.03
2020-01-31           -1          0          0       278.17     24.37      24.37              0       24.37         24.37
2020-02-18            1          1     299.67            0         0     -275.3         302.14       26.84         26.84
2020-02-28           -1          0          0        246.2    -53.47      -29.1              0       -29.1         -29.1
2020-04-09            1          1        265            0         0     -294.1         264.13      -29.97        -29.97
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $9.87
Accumulated return percentage based on the cost of first share of stock investment: 3.89%

Processing portfolio for ticker symbol: VEEV
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-20            1          1     152.25            0         0    -152.25         154.33        2.08          2.08
2019-12-11           -1          0          0        143.5     -8.75      -8.75              0       -8.75         -8.75
2020-01-14            1          1     149.22            0         0    -157.97         147.78      -10.19        -10.19
2020-03-04           -1          0          0          149     -0.22      -8.97              0       -8.97         -8.97
2020-04-01            1          1     150.34            0         0    -159.31         153.51        -5.8          -5.8
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $44.89
Accumulated return percentage based on the cost of first share of stock investment: 29.48%

Processing portfolio for ticker symbol: VZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1      60.63            0         0     -60.63          60.82        0.19          0.19
2020-01-08           -1          0          0        59.67     -0.96      -0.96              0       -0.96         -0.96
2020-04-08            1          1      57.26            0         0     -58.22           57.8       -0.42         -0.42
2020-05-08           -1          0          0        56.22     -1.04         -2              0          -2            -2
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-2.00
Accumulated return percentage based on the cost of first share of stock investment: -3.30%

Processing portfolio for ticker symbol: WING
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-05            1          1      79.23            0         0     -79.23          80.19        0.96          0.96
2020-03-03           -1          0          0        84.74      5.51       5.51              0        5.51          5.51
2020-04-03            1          1      79.78            0         0     -74.27          77.65        3.38          3.38
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $44.80
Accumulated return percentage based on the cost of first share of stock investment: 56.54%

Processing portfolio for ticker symbol: WIX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      128.1            0         0     -128.1          125.2        -2.9          -2.9
2019-11-29           -1          0          0       121.98     -6.12      -6.12              0       -6.12         -6.12
2020-01-03            1          1     126.14            0         0    -132.26         128.92       -3.34         -3.34
2020-02-27           -1          0          0       129.38      3.24      -2.88              0       -2.88         -2.88
2020-04-15            1          1     120.41            0         0    -123.29         118.41       -4.88         -4.88
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $84.11
Accumulated return percentage based on the cost of first share of stock investment: 65.66%

Processing portfolio for ticker symbol: WMT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-15            1          1     120.68            0         0    -120.68         118.87       -1.81         -1.81
2019-12-05           -1          0          0       118.36     -2.32      -2.32              0       -2.32         -2.32
2019-12-18            1          1     121.51            0         0    -123.83         119.86       -3.97         -3.97
2020-01-06           -1          0          0        117.4     -4.11      -6.43              0       -6.43         -6.43
2020-02-18            1          1     118.47            0         0     -124.9         119.63       -5.27         -5.27
2020-03-02           -1          0          0        107.6    -10.87      -17.3              0       -17.3         -17.3
2020-03-27            1          1     110.11            0         0    -127.41         109.58      -17.83        -17.83
2020-03-30           -1          0          0       111.86      1.75     -15.55              0      -15.55        -15.55
2020-03-31            1          1     114.31            0         0    -129.86         113.62      -16.24        -16.24
2020-04-02           -1          0          0       113.18     -1.13     -16.68              0      -16.68        -16.68
2020-04-08            1          1     123.69            0         0    -140.37         121.84      -18.53        -18.53
2020-05-07           -1          0          0       123.46     -0.23     -16.91              0      -16.91        -16.91
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-16.91
Accumulated return percentage based on the cost of first share of stock investment: -14.01%

Processing portfolio for ticker symbol: WORK
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-25            1          1      21.34            0         0     -21.34           22.5        1.16          1.16
2019-12-18           -1          0          0        20.51     -0.83      -0.83              0       -0.83         -0.83
2020-01-06            1          1      22.32            0         0     -23.15          23.52        0.37          0.37
2020-01-27           -1          0          0        20.05     -2.27       -3.1              0        -3.1          -3.1
2020-02-12            1          1      26.05            0         0     -29.15          25.81       -3.34         -3.34
2020-03-13           -1          0          0        21.02     -5.03      -8.13              0       -8.13         -8.13
2020-04-01            1          1      26.15            0         0     -34.28          25.75       -8.53         -8.53
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-1.74
Accumulated return percentage based on the cost of first share of stock investment: -8.15%

Processing portfolio for ticker symbol: ZM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-14            1          1      67.77            0         0     -67.77          67.74       -0.03         -0.03
2019-12-12           -1          0          0        63.49     -4.28      -4.28              0       -4.28         -4.28
2020-01-07            1          1      70.29            0         0     -74.57           71.9       -2.67         -2.67
2020-04-17           -1          0          0       147.91     77.62      73.34              0       73.34         73.34
2020-04-20            1          1      153.3            0         0     -79.96         148.99       69.03         69.03
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $83.59
Accumulated return percentage based on the cost of first share of stock investment: 123.34%

Processing portfolio for ticker symbol: ZS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-11-15            1          1       45.6            0         0      -45.6          45.83        0.23          0.23
2019-12-18           -1          0          0        46.62      1.02       1.02              0        1.02          1.02
2020-01-09            1          1      51.16            0         0     -50.14             54        3.86          3.86
2020-02-28           -1          0          0       48.145    -3.015     -1.995              0      -1.995        -1.995
2020-03-27            1          1      59.54            0         0    -61.535          58.63      -2.905        -2.905
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $14.27
Accumulated return percentage based on the cost of first share of stock investment: 31.28%

Processing portfolio for ticker symbol: ZTS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-06            1          1        121            0         0       -121         121.72        0.72          0.72
2020-03-03           -1          0          0       139.46     18.46      18.46              0       18.46         18.46
2020-04-09            1          1     126.55            0         0    -108.09         128.75       20.66         20.66
2020-05-15           -1          0          0       126.44     -0.11      18.35              0       18.35         18.35
2020-05-19            1          1     131.05            0         0     -112.7         134.34       21.64         21.64
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $25.41
Accumulated return percentage based on the cost of first share of stock investment: 21.00%

In [38]:
stock_status.sort_values(by=['current_status', 'last_action_date'], ascending=False)
Out[38]:
Name trading_pandl trading_return current_status last_action_date
Symbol
PFE Pfizer 3.630 0.099289 Waiting to Enter 2020-05-28
COR CoreSite Realty 4.580 0.039551 Waiting to Enter 2020-05-27
CPB Campbell Soup -11.960 -0.249011 Waiting to Enter 2020-05-27
GOLD Barrick Gold 4.270 0.254773 Waiting to Enter 2020-05-27
KR Kroger Co 1.000 0.037010 Waiting to Enter 2020-05-27
PEP PepsiCo -11.930 -0.087297 Waiting to Enter 2020-05-27
TDOC Teladoc 72.580 0.906570 Waiting to Enter 2020-05-27
BSX Boston Scientific Corporation 1.980 0.047768 Waiting to Enter 2020-05-22
CTXS Citrix Systems 17.310 0.155302 Waiting to Enter 2020-05-21
DHR Danaher 31.000 0.216677 Waiting to Enter 2020-05-21
LLY Eli Lilly 18.400 0.163905 Waiting to Enter 2020-05-21
GSK GlaxoSmithKline 3.440 0.078539 Waiting to Enter 2020-05-20
SNY Sanofi 3.080 0.065911 Waiting to Enter 2020-05-20
ABT Abbott Labs 4.210 0.050065 Waiting to Enter 2020-05-15
CAG Conagra 7.200 0.254777 Waiting to Enter 2020-05-15
GILD Gilead Sciences 5.180 0.077684 Waiting to Enter 2020-05-15
JNJ Johnson & Johnson 16.340 0.124704 Waiting to Enter 2020-05-14
EQIX Equinix 41.480 0.074979 Waiting to Enter 2020-05-13
K Kellogg 5.410 0.083824 Waiting to Enter 2020-05-13
PLD Prologis -13.500 -0.148450 Waiting to Enter 2020-05-13
BAX Baxter International Inc 6.090 0.074241 Waiting to Enter 2020-05-12
CHWY Chewy 10.970 0.459188 Waiting to Enter 2020-05-12
CNC Centene 5.150 0.092860 Waiting to Enter 2020-05-12
CCI Crown Castle 14.800 0.108520 Waiting to Enter 2020-05-11
COST Costco 4.148 0.013627 Waiting to Enter 2020-05-11
SJM JM Smucker -20.990 -0.197367 Waiting to Enter 2020-05-11
AKAM Akamai Technologies 8.440 0.095013 Waiting to Enter 2020-05-08
VZ Verizon -2.000 -0.032987 Waiting to Enter 2020-05-08
AMT American Tower 7.660 0.035661 Waiting to Enter 2020-05-07
CL Colgate-Pammolive 2.790 0.041029 Waiting to Enter 2020-05-07
PG Procter & Gamble -0.150 -0.001226 Waiting to Enter 2020-05-07
WMT Walmart -16.910 -0.140123 Waiting to Enter 2020-05-07
MDLZ Mondelez 1.720 0.033173 Waiting to Enter 2020-05-04
AMD Advanced Micro Devices 15.076 0.401919 Holding Position 2020-05-22
HRL Hormel 6.460 0.153008 Holding Position 2020-05-22
D Dominion Energy 2.290 0.027475 Holding Position 2020-05-19
ZTS Zoetis 25.410 0.210000 Holding Position 2020-05-19
RMD ResMed 25.870 0.177850 Holding Position 2020-05-13
BNTX BioNTech 18.610 0.986744 Holding Position 2020-05-06
EVBG Everbridge 29.590 0.349145 Holding Position 2020-04-22
ZM Zoom Video 83.590 1.233437 Holding Position 2020-04-20
BYND Beyond Meat 40.030 0.465465 Holding Position 2020-04-15
EBAY eBay 6.280 0.179737 Holding Position 2020-04-15
SPOT Spotify 43.890 0.297761 Holding Position 2020-04-15
TGT Target Corporation 7.280 0.065936 Holding Position 2020-04-15
WIX Wix.Com Ltd 84.110 0.656596 Holding Position 2020-04-15
AAPL Apple 61.030 0.231393 Holding Position 2020-04-14
ABBV AbbVie 0.820 0.009482 Holding Position 2020-04-14
CRM Salesforce 28.540 0.175060 Holding Position 2020-04-14
ETSY Etsy Inc 18.580 0.450097 Holding Position 2020-04-14
PYPL PayPal 41.050 0.398544 Holding Position 2020-04-14
SQ Square 29.340 0.475912 Holding Position 2020-04-14
TTD The Trade Desk 124.650 0.546711 Holding Position 2020-04-14
ADBE Adobe 132.110 0.450058 Holding Position 2020-04-13
DDOG Datadog Inc 29.760 0.740667 Holding Position 2020-04-13
GOOG Alphabet 187.550 0.144547 Holding Position 2020-04-13
HD Home Depot 53.520 0.241953 Holding Position 2020-04-13
PRGO Perrigo -6.650 -0.127860 Holding Position 2020-04-13
TMO Thermo Fisher 8.990 0.029952 Holding Position 2020-04-13
CLX Clorox 54.140 0.361174 Holding Position 2020-04-09
SHOP Shopify 466.170 1.462448 Holding Position 2020-04-09
SPLK Splunk Inc 85.140 0.703695 Holding Position 2020-04-09
UNH UnitedHealth Group 9.870 0.038889 Holding Position 2020-04-09
CHGG Chegg Inc 28.770 0.801170 Holding Position 2020-04-08
DG Dollar General 17.140 0.109207 Holding Position 2020-04-08
EA Electronic Arts 27.370 0.284511 Holding Position 2020-04-08
EBS Emergent Biosolutions Inc 24.670 0.448545 Holding Position 2020-04-08
GIS General Mills -4.230 -0.080556 Holding Position 2020-04-08
MKC McCormick 11.070 0.066908 Holding Position 2020-04-08
TW Tradeweb 9.150 0.211121 Holding Position 2020-04-08
ATVI Activision Blizzard 10.780 0.195573 Holding Position 2020-04-07
CMG Chipotle 207.480 0.253913 Holding Position 2020-04-07
MASI Masimo 62.120 0.405615 Holding Position 2020-04-07
MKTX MarketAxess 44.310 0.118476 Holding Position 2020-04-07
MSFT Microsoft 30.098 0.204720 Holding Position 2020-04-07
REGN Regeneron 123.450 0.352916 Holding Position 2020-04-07
SPGI S&P Global Inc 55.930 0.216590 Holding Position 2020-04-07
DXCM DexCom 85.700 0.418437 Holding Position 2020-04-06
LVGO Livongo 19.500 0.728700 Holding Position 2020-04-06
PANW Palo Alto Networks Inc 6.100 0.025349 Holding Position 2020-04-06
TTWO Take-Two Interactive 2.490 0.020376 Holding Position 2020-04-06
NVDA Nvidia 116.490 0.557555 Holding Position 2020-04-03
TWLO Twilio Inc 108.340 1.031810 Holding Position 2020-04-03
WING Wingstop 44.800 0.565442 Holding Position 2020-04-03
DPZ Domino's -23.880 -0.085687 Holding Position 2020-04-02
MRVL Marvell Technology 3.650 0.131864 Holding Position 2020-04-02
NFLX Netflix 75.820 0.267679 Holding Position 2020-04-02
OKTA Okta 71.510 0.612715 Holding Position 2020-04-02
RNG RingCentral 88.700 0.529394 Holding Position 2020-04-02
DOCU DocuSign 43.580 0.640882 Holding Position 2020-04-01
VEEV Veeva Systems 44.890 0.294844 Holding Position 2020-04-01
WORK Slack -1.740 -0.081537 Holding Position 2020-04-01
AMZN Amazon 451.000 0.257504 Holding Position 2020-03-31
COUP Coupa Software 72.510 0.489403 Holding Position 2020-03-31
CRWD CrowdStrike 15.770 0.274500 Holding Position 2020-03-31
NET Cloudflare 3.900 0.241935 Holding Position 2020-03-31
PTON Peloton 14.160 0.540458 Holding Position 2020-03-31
LOGI Logitech 19.730 0.477840 Holding Position 2020-03-27
ZS Zscaler 14.265 0.312829 Holding Position 2020-03-27
MRNA Moderna 26.010 1.432269 Holding Position 2020-03-02
In [39]:
if notifyStatus: email_notify("Task 4. Back-test Model completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))

Task 5. Evaluate Performance

In [40]:
if notifyStatus: email_notify("Task 5. Evaluate Performance has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [41]:
# Calculate the profit/loss from the trading model vs. merely holding a long position
trading_vs_long = stock_status.copy()
trading_vs_long.drop(['current_status', 'last_action_date'], axis=1, inplace=True)

for ticker in stock_list:
    trading_vs_long.loc[ticker, 'long_pandl'] = stock_close_df[ticker][-1] - stock_open_df[ticker][0]
    trading_vs_long.loc[ticker, 'long_return'] = trading_vs_long.loc[ticker, 'long_pandl'] / stock_open_df[ticker][0]
In [42]:
# Rank stocks by the return percentage of the trading model
trading_vs_long.sort_values(by=['trading_return'], ascending=False)
Out[42]:
Name trading_pandl trading_return long_pandl long_return
Symbol
SHOP Shopify 466.170 1.462448 429.96 1.367253
MRNA Moderna 26.010 1.432269 41.41 2.930644
ZM Zoom Video 83.590 1.233437 90.69 1.244716
TWLO Twilio Inc 108.340 1.031810 81.05 0.734481
BNTX BioNTech 18.610 0.986744 30.37 1.840606
TDOC Teladoc 72.580 0.906570 98.82 1.451528
CHGG Chegg Inc 28.770 0.801170 29.32 0.941252
DDOG Datadog Inc 29.760 0.740667 30.38 0.826667
LVGO Livongo 19.500 0.728700 38.73 2.025628
SPLK Splunk Inc 85.140 0.703695 61.05 0.513241
WIX Wix.Com Ltd 84.110 0.656596 84.67 0.689888
DOCU DocuSign 43.580 0.640882 60.99 0.912887
OKTA Okta 71.510 0.612715 66.92 0.571966
WING Wingstop 44.800 0.565442 30.72 0.347708
NVDA Nvidia 116.490 0.557555 158.86 0.879526
TTD The Trade Desk 124.650 0.546711 108.22 0.569729
PTON Peloton 14.160 0.540458 18.51 0.768050
RNG RingCentral 88.700 0.529394 85.61 0.492294
COUP Coupa Software 72.510 0.489403 67.02 0.446800
LOGI Logitech 19.730 0.477840 16.67 0.413340
SQ Square 29.340 0.475912 17.37 0.279036
BYND Beyond Meat 40.030 0.465465 -17.68 -0.127653
CHWY Chewy 10.970 0.459188 16.46 0.649822
ETSY Etsy Inc 18.580 0.450097 20.91 0.367487
ADBE Adobe 132.110 0.450058 105.77 0.385937
EBS Emergent Biosolutions Inc 24.670 0.448545 29.56 0.563907
DXCM DexCom 85.700 0.418437 208.59 1.361198
MASI Masimo 62.120 0.405615 90.14 0.625017
AMD Advanced Micro Devices 15.076 0.401919 23.23 0.814802
PYPL PayPal 41.050 0.398544 49.39 0.496881
CLX Clorox 54.140 0.361174 55.00 0.366764
REGN Regeneron 123.450 0.352916 288.83 0.998099
EVBG Everbridge 29.590 0.349145 68.92 1.016369
ZS Zscaler 14.265 0.312829 27.63 0.573594
SPOT Spotify 43.890 0.297761 63.13 0.553335
VEEV Veeva Systems 44.890 0.294844 55.47 0.372958
EA Electronic Arts 27.370 0.284511 28.69 0.309627
CRWD CrowdStrike 15.770 0.274500 16.90 0.269968
NFLX Netflix 75.820 0.267679 147.47 0.554461
AMZN Amazon 451.000 0.257504 675.86 0.391748
CAG Conagra 7.200 0.254777 6.00 0.214977
GOLD Barrick Gold 4.270 0.254773 6.08 0.340235
CMG Chipotle 207.480 0.253913 165.12 0.198947
HD Home Depot 53.520 0.241953 15.80 0.068893
NET Cloudflare 3.900 0.241935 10.84 0.628042
AAPL Apple 61.030 0.231393 90.32 0.396262
DHR Danaher 31.000 0.216677 27.41 0.200718
SPGI S&P Global Inc 55.930 0.216590 70.91 0.286054
TW Tradeweb 9.150 0.211121 23.21 0.583899
ZTS Zoetis 25.410 0.210000 12.40 0.098640
MSFT Microsoft 30.098 0.204720 42.91 0.309842
ATVI Activision Blizzard 10.780 0.195573 17.29 0.326658
EBAY eBay 6.280 0.179737 6.46 0.171035
RMD ResMed 25.870 0.177850 27.26 0.207206
CRM Salesforce 28.540 0.175060 34.26 0.233315
LLY Eli Lilly 18.400 0.163905 43.62 0.407549
CTXS Citrix Systems 17.310 0.155302 44.90 0.466300
HRL Hormel 6.460 0.153008 5.19 0.121574
GOOG Alphabet 187.550 0.144547 218.15 0.182007
MRVL Marvell Technology 3.650 0.131864 6.59 0.281865
JNJ Johnson & Johnson 16.340 0.124704 18.02 0.139744
MKTX MarketAxess 44.310 0.118476 129.45 0.365616
DG Dollar General 17.140 0.109207 23.68 0.147603
CCI Crown Castle 14.800 0.108520 32.19 0.235652
PFE Pfizer 3.630 0.099289 2.51 0.070367
AKAM Akamai Technologies 8.440 0.095013 13.50 0.150990
CNC Centene 5.150 0.092860 23.22 0.531593
K Kellogg 5.410 0.083824 3.71 0.060120
GSK GlaxoSmithKline 3.440 0.078539 -0.56 -0.013302
GILD Gilead Sciences 5.180 0.077684 13.20 0.212492
EQIX Equinix 41.480 0.074979 119.82 0.208917
BAX Baxter International Inc 6.090 0.074241 1.83 0.021188
MKC McCormick 11.070 0.066908 7.42 0.044945
TGT Target Corporation 7.280 0.065936 8.87 0.080960
SNY Sanofi 3.080 0.065911 3.85 0.085880
ABT Abbott Labs 4.210 0.050065 13.01 0.164496
BSX Boston Scientific Corporation 1.980 0.047768 -0.82 -0.021416
CL Colgate-Pammolive 2.790 0.041029 2.13 0.030446
COR CoreSite Realty 4.580 0.039551 10.29 0.087604
UNH UnitedHealth Group 9.870 0.038889 85.78 0.393144
KR Kroger Co 1.000 0.037010 7.96 0.330290
AMT American Tower 7.660 0.035661 31.97 0.141366
MDLZ Mondelez 1.720 0.033173 -3.42 -0.062375
TMO Thermo Fisher 8.990 0.029952 66.45 0.240508
D Dominion Energy 2.290 0.027475 2.57 0.031678
PANW Palo Alto Networks Inc 6.100 0.025349 20.89 0.100192
TTWO Take-Two Interactive 2.490 0.020376 12.76 0.105185
COST Costco 4.148 0.013627 10.93 0.036600
ABBV AbbVie 0.820 0.009482 16.81 0.229582
PG Procter & Gamble -0.150 -0.001226 -5.27 -0.043435
VZ Verizon -2.000 -0.032987 -3.54 -0.059737
GIS General Mills -4.230 -0.080556 7.96 0.147544
WORK Slack -1.740 -0.081537 8.24 0.339095
DPZ Domino's -23.880 -0.085687 117.12 0.471441
PEP PepsiCo -11.930 -0.087297 -4.82 -0.035154
PRGO Perrigo -6.650 -0.127860 2.96 0.056847
WMT Walmart -16.910 -0.140123 4.79 0.040286
PLD Prologis -13.500 -0.148450 7.84 0.092008
SJM JM Smucker -20.990 -0.197367 5.48 0.051708
CPB Campbell Soup -11.960 -0.249011 2.93 0.062889
In [43]:
# Rank stocks by the return percentage of the long-only approach
trading_vs_long.sort_values(by=['long_return'], ascending=False)
Out[43]:
Name trading_pandl trading_return long_pandl long_return
Symbol
MRNA Moderna 26.010 1.432269 41.41 2.930644
LVGO Livongo 19.500 0.728700 38.73 2.025628
BNTX BioNTech 18.610 0.986744 30.37 1.840606
TDOC Teladoc 72.580 0.906570 98.82 1.451528
SHOP Shopify 466.170 1.462448 429.96 1.367253
DXCM DexCom 85.700 0.418437 208.59 1.361198
ZM Zoom Video 83.590 1.233437 90.69 1.244716
EVBG Everbridge 29.590 0.349145 68.92 1.016369
REGN Regeneron 123.450 0.352916 288.83 0.998099
CHGG Chegg Inc 28.770 0.801170 29.32 0.941252
DOCU DocuSign 43.580 0.640882 60.99 0.912887
NVDA Nvidia 116.490 0.557555 158.86 0.879526
DDOG Datadog Inc 29.760 0.740667 30.38 0.826667
AMD Advanced Micro Devices 15.076 0.401919 23.23 0.814802
PTON Peloton 14.160 0.540458 18.51 0.768050
TWLO Twilio Inc 108.340 1.031810 81.05 0.734481
WIX Wix.Com Ltd 84.110 0.656596 84.67 0.689888
CHWY Chewy 10.970 0.459188 16.46 0.649822
NET Cloudflare 3.900 0.241935 10.84 0.628042
MASI Masimo 62.120 0.405615 90.14 0.625017
TW Tradeweb 9.150 0.211121 23.21 0.583899
ZS Zscaler 14.265 0.312829 27.63 0.573594
OKTA Okta 71.510 0.612715 66.92 0.571966
TTD The Trade Desk 124.650 0.546711 108.22 0.569729
EBS Emergent Biosolutions Inc 24.670 0.448545 29.56 0.563907
NFLX Netflix 75.820 0.267679 147.47 0.554461
SPOT Spotify 43.890 0.297761 63.13 0.553335
CNC Centene 5.150 0.092860 23.22 0.531593
SPLK Splunk Inc 85.140 0.703695 61.05 0.513241
PYPL PayPal 41.050 0.398544 49.39 0.496881
RNG RingCentral 88.700 0.529394 85.61 0.492294
DPZ Domino's -23.880 -0.085687 117.12 0.471441
CTXS Citrix Systems 17.310 0.155302 44.90 0.466300
COUP Coupa Software 72.510 0.489403 67.02 0.446800
LOGI Logitech 19.730 0.477840 16.67 0.413340
LLY Eli Lilly 18.400 0.163905 43.62 0.407549
AAPL Apple 61.030 0.231393 90.32 0.396262
UNH UnitedHealth Group 9.870 0.038889 85.78 0.393144
AMZN Amazon 451.000 0.257504 675.86 0.391748
ADBE Adobe 132.110 0.450058 105.77 0.385937
VEEV Veeva Systems 44.890 0.294844 55.47 0.372958
ETSY Etsy Inc 18.580 0.450097 20.91 0.367487
CLX Clorox 54.140 0.361174 55.00 0.366764
MKTX MarketAxess 44.310 0.118476 129.45 0.365616
WING Wingstop 44.800 0.565442 30.72 0.347708
GOLD Barrick Gold 4.270 0.254773 6.08 0.340235
WORK Slack -1.740 -0.081537 8.24 0.339095
KR Kroger Co 1.000 0.037010 7.96 0.330290
ATVI Activision Blizzard 10.780 0.195573 17.29 0.326658
MSFT Microsoft 30.098 0.204720 42.91 0.309842
EA Electronic Arts 27.370 0.284511 28.69 0.309627
SPGI S&P Global Inc 55.930 0.216590 70.91 0.286054
MRVL Marvell Technology 3.650 0.131864 6.59 0.281865
SQ Square 29.340 0.475912 17.37 0.279036
CRWD CrowdStrike 15.770 0.274500 16.90 0.269968
TMO Thermo Fisher 8.990 0.029952 66.45 0.240508
CCI Crown Castle 14.800 0.108520 32.19 0.235652
CRM Salesforce 28.540 0.175060 34.26 0.233315
ABBV AbbVie 0.820 0.009482 16.81 0.229582
CAG Conagra 7.200 0.254777 6.00 0.214977
GILD Gilead Sciences 5.180 0.077684 13.20 0.212492
EQIX Equinix 41.480 0.074979 119.82 0.208917
RMD ResMed 25.870 0.177850 27.26 0.207206
DHR Danaher 31.000 0.216677 27.41 0.200718
CMG Chipotle 207.480 0.253913 165.12 0.198947
GOOG Alphabet 187.550 0.144547 218.15 0.182007
EBAY eBay 6.280 0.179737 6.46 0.171035
ABT Abbott Labs 4.210 0.050065 13.01 0.164496
AKAM Akamai Technologies 8.440 0.095013 13.50 0.150990
DG Dollar General 17.140 0.109207 23.68 0.147603
GIS General Mills -4.230 -0.080556 7.96 0.147544
AMT American Tower 7.660 0.035661 31.97 0.141366
JNJ Johnson & Johnson 16.340 0.124704 18.02 0.139744
HRL Hormel 6.460 0.153008 5.19 0.121574
TTWO Take-Two Interactive 2.490 0.020376 12.76 0.105185
PANW Palo Alto Networks Inc 6.100 0.025349 20.89 0.100192
ZTS Zoetis 25.410 0.210000 12.40 0.098640
PLD Prologis -13.500 -0.148450 7.84 0.092008
COR CoreSite Realty 4.580 0.039551 10.29 0.087604
SNY Sanofi 3.080 0.065911 3.85 0.085880
TGT Target Corporation 7.280 0.065936 8.87 0.080960
PFE Pfizer 3.630 0.099289 2.51 0.070367
HD Home Depot 53.520 0.241953 15.80 0.068893
CPB Campbell Soup -11.960 -0.249011 2.93 0.062889
K Kellogg 5.410 0.083824 3.71 0.060120
PRGO Perrigo -6.650 -0.127860 2.96 0.056847
SJM JM Smucker -20.990 -0.197367 5.48 0.051708
MKC McCormick 11.070 0.066908 7.42 0.044945
WMT Walmart -16.910 -0.140123 4.79 0.040286
COST Costco 4.148 0.013627 10.93 0.036600
D Dominion Energy 2.290 0.027475 2.57 0.031678
CL Colgate-Pammolive 2.790 0.041029 2.13 0.030446
BAX Baxter International Inc 6.090 0.074241 1.83 0.021188
GSK GlaxoSmithKline 3.440 0.078539 -0.56 -0.013302
BSX Boston Scientific Corporation 1.980 0.047768 -0.82 -0.021416
PEP PepsiCo -11.930 -0.087297 -4.82 -0.035154
PG Procter & Gamble -0.150 -0.001226 -5.27 -0.043435
VZ Verizon -2.000 -0.032987 -3.54 -0.059737
MDLZ Mondelez 1.720 0.033173 -3.42 -0.062375
BYND Beyond Meat 40.030 0.465465 -17.68 -0.127653
In [44]:
if notifyStatus: email_notify("Task 5. Evaluate Performance completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [45]:
print ('Total time for the script:',(datetime.now() - startTimeScript))
Total time for the script: 0:08:29.180930